diff --git a/CHANGELOG.md b/CHANGELOG.md index ec907368f2..5daaf57f0c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,20 @@ # Changelog +## Release v1.4.0 + +Features: + +- Added VersionID support to metadata details +- Improved Websockets handlers + +Bug Fix: + +- Fixed vulnerabilities and updated dependencies +- Fixed an issue with Download URL decoding +- Fixed leak in Object Browser Websocket +- Minor UX fixes + ## Release v1.3.0 Features: diff --git a/web-app/build/asset-manifest.json b/web-app/build/asset-manifest.json index 0330706b46..f44771c399 100644 --- a/web-app/build/asset-manifest.json +++ b/web-app/build/asset-manifest.json @@ -1,10 +1,10 @@ { "files": { "main.css": "./static/css/main.e60e4760.css", - "main.js": "./static/js/main.cbc16c2b.js", + "main.js": "./static/js/main.bc79b8d1.js", "static/js/5301.2c626a41.chunk.js": "./static/js/5301.2c626a41.chunk.js", "static/js/9361.3fc638a6.chunk.js": "./static/js/9361.3fc638a6.chunk.js", - "static/js/843.8502a4fd.chunk.js": "./static/js/843.8502a4fd.chunk.js", + "static/js/843.d7a5defb.chunk.js": "./static/js/843.d7a5defb.chunk.js", "static/js/3035.b2eb0918.chunk.js": "./static/js/3035.b2eb0918.chunk.js", "static/js/9537.675a2ebb.chunk.js": "./static/js/9537.675a2ebb.chunk.js", "static/js/5711.c58de6bb.chunk.js": "./static/js/5711.c58de6bb.chunk.js", @@ -21,7 +21,7 @@ "static/js/6758.b6da6dc7.chunk.js": "./static/js/6758.b6da6dc7.chunk.js", "static/js/755.ac098541.chunk.js": "./static/js/755.ac098541.chunk.js", "static/js/8715.0aaa4c38.chunk.js": "./static/js/8715.0aaa4c38.chunk.js", - "static/js/7880.6f98d22b.chunk.js": "./static/js/7880.6f98d22b.chunk.js", + "static/js/7880.d04a7a8e.chunk.js": "./static/js/7880.d04a7a8e.chunk.js", "static/js/2209.3b0ca7fa.chunk.js": "./static/js/2209.3b0ca7fa.chunk.js", "static/js/7435.eb0888fa.chunk.js": "./static/js/7435.eb0888fa.chunk.js", "static/js/9340.8c56fae7.chunk.js": "./static/js/9340.8c56fae7.chunk.js", @@ -40,7 +40,7 @@ "static/js/4103.b6a51725.chunk.js": "./static/js/4103.b6a51725.chunk.js", "static/js/1702.9ff3a82e.chunk.js": "./static/js/1702.9ff3a82e.chunk.js", "static/js/7601.4e033e78.chunk.js": "./static/js/7601.4e033e78.chunk.js", - "static/js/2959.25a10423.chunk.js": "./static/js/2959.25a10423.chunk.js", + "static/js/2959.e0878952.chunk.js": "./static/js/2959.e0878952.chunk.js", "static/js/9619.572ad00d.chunk.js": "./static/js/9619.572ad00d.chunk.js", "static/js/8017.d5b163f3.chunk.js": "./static/js/8017.d5b163f3.chunk.js", "static/js/3323.f86a698b.chunk.js": "./static/js/3323.f86a698b.chunk.js", @@ -92,7 +92,7 @@ "static/js/1303.12f6ca82.chunk.js": "./static/js/1303.12f6ca82.chunk.js", "static/js/5079.a0847792.chunk.js": "./static/js/5079.a0847792.chunk.js", "static/js/4581.41480fcf.chunk.js": "./static/js/4581.41480fcf.chunk.js", - "static/js/6016.dcb3bcb4.chunk.js": "./static/js/6016.dcb3bcb4.chunk.js", + "static/js/6016.3475b798.chunk.js": "./static/js/6016.3475b798.chunk.js", "static/js/8144.0cc85475.chunk.js": "./static/js/8144.0cc85475.chunk.js", "static/js/1195.955963a0.chunk.js": "./static/js/1195.955963a0.chunk.js", "static/js/1011.13d372c8.chunk.js": "./static/js/1011.13d372c8.chunk.js", @@ -119,10 +119,10 @@ "static/media/placeholderimage.png": "./static/media/placeholderimage.077ea48bd1ef1f4a883f.png", "index.html": "./index.html", "main.e60e4760.css.map": "./static/css/main.e60e4760.css.map", - "main.cbc16c2b.js.map": "./static/js/main.cbc16c2b.js.map", + "main.bc79b8d1.js.map": "./static/js/main.bc79b8d1.js.map", "5301.2c626a41.chunk.js.map": "./static/js/5301.2c626a41.chunk.js.map", "9361.3fc638a6.chunk.js.map": "./static/js/9361.3fc638a6.chunk.js.map", - "843.8502a4fd.chunk.js.map": "./static/js/843.8502a4fd.chunk.js.map", + "843.d7a5defb.chunk.js.map": "./static/js/843.d7a5defb.chunk.js.map", "3035.b2eb0918.chunk.js.map": "./static/js/3035.b2eb0918.chunk.js.map", "9537.675a2ebb.chunk.js.map": "./static/js/9537.675a2ebb.chunk.js.map", "5711.c58de6bb.chunk.js.map": "./static/js/5711.c58de6bb.chunk.js.map", @@ -139,7 +139,7 @@ "6758.b6da6dc7.chunk.js.map": "./static/js/6758.b6da6dc7.chunk.js.map", "755.ac098541.chunk.js.map": "./static/js/755.ac098541.chunk.js.map", "8715.0aaa4c38.chunk.js.map": "./static/js/8715.0aaa4c38.chunk.js.map", - "7880.6f98d22b.chunk.js.map": "./static/js/7880.6f98d22b.chunk.js.map", + "7880.d04a7a8e.chunk.js.map": "./static/js/7880.d04a7a8e.chunk.js.map", "2209.3b0ca7fa.chunk.js.map": "./static/js/2209.3b0ca7fa.chunk.js.map", "7435.eb0888fa.chunk.js.map": "./static/js/7435.eb0888fa.chunk.js.map", "9340.8c56fae7.chunk.js.map": "./static/js/9340.8c56fae7.chunk.js.map", @@ -158,7 +158,7 @@ "4103.b6a51725.chunk.js.map": "./static/js/4103.b6a51725.chunk.js.map", "1702.9ff3a82e.chunk.js.map": "./static/js/1702.9ff3a82e.chunk.js.map", "7601.4e033e78.chunk.js.map": "./static/js/7601.4e033e78.chunk.js.map", - "2959.25a10423.chunk.js.map": "./static/js/2959.25a10423.chunk.js.map", + "2959.e0878952.chunk.js.map": "./static/js/2959.e0878952.chunk.js.map", "9619.572ad00d.chunk.js.map": "./static/js/9619.572ad00d.chunk.js.map", "8017.d5b163f3.chunk.js.map": "./static/js/8017.d5b163f3.chunk.js.map", "3323.f86a698b.chunk.js.map": "./static/js/3323.f86a698b.chunk.js.map", @@ -210,13 +210,13 @@ "1303.12f6ca82.chunk.js.map": "./static/js/1303.12f6ca82.chunk.js.map", "5079.a0847792.chunk.js.map": "./static/js/5079.a0847792.chunk.js.map", "4581.41480fcf.chunk.js.map": "./static/js/4581.41480fcf.chunk.js.map", - "6016.dcb3bcb4.chunk.js.map": "./static/js/6016.dcb3bcb4.chunk.js.map", + "6016.3475b798.chunk.js.map": "./static/js/6016.3475b798.chunk.js.map", "8144.0cc85475.chunk.js.map": "./static/js/8144.0cc85475.chunk.js.map", "1195.955963a0.chunk.js.map": "./static/js/1195.955963a0.chunk.js.map", "1011.13d372c8.chunk.js.map": "./static/js/1011.13d372c8.chunk.js.map" }, "entrypoints": [ "static/css/main.e60e4760.css", - "static/js/main.cbc16c2b.js" + "static/js/main.bc79b8d1.js" ] } \ No newline at end of file diff --git a/web-app/build/index.html b/web-app/build/index.html index cd30aaaabc..ed30dbd7d6 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/2959.25a10423.chunk.js b/web-app/build/static/js/2959.25a10423.chunk.js deleted file mode 100644 index d279c0c578..0000000000 --- a/web-app/build/static/js/2959.25a10423.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -(self.webpackChunkweb_app=self.webpackChunkweb_app||[]).push([[2959,614],{30614:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>h});var s=n(65043),o=n(94141),a=n(89923),i=n(56629),l=n(53518),r=n(77403),c=n(64159),d=n(20554),u=n(70579);const h=e=>{let{modalOpen:t,onClose:n,bucket:h,prefilledRoute:x}=e;const m=(0,d.jL)(),[p,j]=(0,s.useState)(""),[b,g]=(0,s.useState)("readonly");(0,s.useEffect)((()=>{x&&j(x)}),[x]);return(0,u.jsx)(o.A,{modalOpen:t,title:"Add Anonymous Access Rule",onClose:n,titleIcon:(0,u.jsx)(a.No_,{}),children:(0,u.jsxs)(a.Hbc,{withBorders:!1,containerPadding:!1,children:[(0,u.jsx)(a.cl_,{value:p,label:"Prefix",id:"prefix",name:"prefix",placeholder:"Enter Prefix",onChange:e=>{j(e.target.value)},tooltip:"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."}),(0,u.jsx)(a.l6P,{id:"access",name:"Access",onChange:e=>{g(e)},label:"Access",value:b,options:[{label:"readonly",value:"readonly"},{label:"writeonly",value:"writeonly"},{label:"readwrite",value:"readwrite"}],disabled:!1,helpTip:(0,u.jsx)(s.Fragment,{children:"Select the desired level of access available to unauthenticated Users"}),helpTipPlacement:"right"}),(0,u.jsxs)(a.xA9,{item:!0,xs:12,sx:r.Uz.modalButtonBar,children:[(0,u.jsx)(a.$nd,{id:"clear",type:"button",variant:"regular",onClick:()=>{j(""),g("readonly")},label:"Clear"}),(0,u.jsx)(a.$nd,{id:"add-access-save",type:"submit",variant:"callAction",disabled:""===p.trim(),onClick:()=>{i.F.bucket.setAccessRuleWithBucket(h,{prefix:p,access:b}).then((e=>{m((0,c.Hk)("Access Rule added successfully")),n()})).catch((e=>{m((0,c.C9)((0,l.S)(e.error))),n()}))},label:"Save"})]})]})})}},27945:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>Me});var s=n(65043),o=n(22166),a=n(73216),i=n(56629),l=n(20554),r=n(99161),c=n(56483),d=n(6035),u=n(33097),h=n.n(u),x=n(89923),m=n(53518),p=n(94281),j=n(24241),b=n(61476),g=n.n(b),f=n(94574),v=n(35475),_=n(77938),S=n(72237),O=n(64159);const w=e=>(e.match(/\.([^.]*?)(?=\?|#|$)/)||[])[1],T=function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];const s=Object.keys(e).reduce(((n,s)=>(w(s)&&s.includes(t)&&(n[s]=e[s]),n)),{});return Object.keys(s).filter((e=>{const o=s[e].some((e=>n.find((t=>{let n=!1;if(-1!==t.indexOf("*")){const s=t.substring(0,t.length-1);n=e.includes(s)}return n||e===t})))),a=e.substring(0,e.indexOf("/*."))==="arn:aws:s3:::".concat(t);return o&&(a&&"arn:aws:s3:::*"!==e)}))};var y=n(70579);const C=(0,S.A)(s.lazy((()=>n.e(7774).then(n.bind(n,97774))))),E=f.Ay.div((()=>({display:"flex","& .additionalOptions":{paddingRight:"10px",display:"flex",alignItems:"center",["@media (max-width: ".concat(x.nmC.lg,"px)")]:{display:"none"}},"& .slashSpacingStyle":{margin:"0 5px"}}))),N=e=>{let{bucketName:t,internalPaths:n,hidePathButton:i,additionalOptions:u}=e;const h=(0,l.jL)(),m=(0,a.Zp)(),p=(0,o.d4)((e=>e.objectBrowser.rewind.rewindEnabled)),j=(0,o.d4)((e=>e.objectBrowser.versionsMode)),b=(0,o.d4)((e=>e.objectBrowser.versionedFile)),f=(0,o.d4)((e=>e.system.anonymousMode)),[S,w]=(0,s.useState)(!1),[N,A]=(0,s.useState)(!1),I=[r.OV.S3_PUT_OBJECT,r.OV.S3_PUT_ACTIONS],k=(0,o.d4)((e=>e.console.session&&e.console.session.permissions||{}));let B=n;""!==n&&(B="/".concat(n));const F=B.split("/").filter((e=>""!==e)),L=F.length-1,V=t+B||t,D=T(k,V,I);(0,s.useEffect)((()=>{A(!1),Object.keys(k).forEach((e=>{e.includes(V)&&e.includes("/*")&&A(!0)}))}),[V,n,k]);const P=(0,_._)([V,...D],I)||f||N;let R=F.map(((e,n)=>{const o="".concat(F.slice(0,n+1).join("/"),"/"),a="/browser/".concat(t,"/").concat(o?"".concat((0,c.nf)(o)):"");return n===L&&e===b?null:(0,y.jsxs)(s.Fragment,{children:[(0,y.jsx)("span",{className:"slashSpacingStyle",children:"/"}),n===L?(0,y.jsx)("span",{style:{cursor:"default",whiteSpace:"pre"},children:(0,c.Tw)(e)}):(0,y.jsx)(v.N_,{style:{whiteSpace:"pre"},to:a,onClick:()=>{h((0,d.cQ)({status:!1,objectName:""}))},children:(0,c.Tw)(e)})]},"breadcrumbs-".concat(n.toString()))})),U=[];j&&(U=[(0,y.jsx)(s.Fragment,{children:(0,y.jsxs)("span",{children:[(0,y.jsx)("span",{className:"slashSpacingStyle",children:"/"}),b," - Versions"]})},"breadcrumbs-versionedItem")]);const z=[(0,y.jsx)(s.Fragment,{children:(0,y.jsx)(v.N_,{to:"/browser/".concat(t),onClick:()=>{h((0,d.cQ)({status:!1,objectName:""}))},children:t})},"breadcrumbs-root-path"),...R,...U];return(0,y.jsxs)(s.Fragment,{children:[(0,y.jsxs)(E,{children:[S&&(0,y.jsx)(C,{modalOpen:S,bucketName:t,folderName:n,onClose:()=>{w(!1)},limitedSubPath:N&&!((0,_._)([V,...D],I)||f)}),(0,y.jsx)(x.BIu,{sx:{whiteSpace:"pre"},goBackFunction:()=>{if(j)h((0,d.cQ)({status:!1,objectName:""}));else{if(0===F.length)return void m("/browser");const e=F.slice(0,-1);m("/browser/".concat(t).concat(e.length>0?"/".concat((0,c.nf)("".concat(e.join("/"),"/"))):""))}},additionalOptions:(0,y.jsxs)(s.Fragment,{children:[(0,y.jsx)(g(),{text:"".concat(t,"/").concat(F.join("/")),children:(0,y.jsx)(x.$nd,{id:"copy-path",icon:(0,y.jsx)(x.TdU,{style:{width:"12px",height:"12px",fill:"#969FA8",marginTop:-1}}),variant:"regular",onClick:()=>{h((0,O.Hk)("Path copied to clipboard"))},style:{width:"28px",height:"28px",color:"#969FA8",border:"#969FA8 1px solid",marginRight:5}})}),(0,y.jsx)(x.azJ,{className:"additionalOptions",children:u})]}),children:z}),!i&&(0,y.jsx)(x.m_M,{tooltip:P?"Choose or create a new path":(0,r.vj)([r.OV.S3_PUT_OBJECT,r.OV.S3_PUT_ACTIONS],"create a new path"),children:(0,y.jsx)(x.$nd,{id:"new-path",onClick:()=>{w(!0)},disabled:!f&&(p||!P),icon:(0,y.jsx)(x.pj3,{style:{fill:"#969FA8"}}),style:{whiteSpace:"nowrap"},variant:"regular",label:"Create new path"})})]}),(0,y.jsx)(x.azJ,{sx:{display:"none",marginTop:15,marginBottom:5,justifyContent:"flex-start","& > div":{fontSize:12,fontWeight:"normal",flexDirection:"row",flexWrap:"nowrap"},["@media (max-width: ".concat(x.nmC.lg,"px)")]:{display:"flex"}},children:u})]})};var A=n(93445);const I=e=>"Enabled"===e||"Suspended"===e;var k=n(37414),B=n(39947),F=n(81708),L=n(6681);const V=e=>{let{uploadPath:t,bucketName:n,forceDisable:a=!1,uploadFileFunction:i,uploadFolderFunction:l,overrideStyles:c={}}=e;const[d,u]=(0,s.useState)(null),[h,m]=(0,s.useState)(!1),p=(0,o.d4)((e=>e.system.anonymousMode)),j=(0,o.d4)((e=>e.console.session&&e.console.session.permissions||{})),b=[r.OV.S3_PUT_OBJECT,r.OV.S3_PUT_ACTIONS],g=T(j,t,b),f=Boolean(d),v=()=>{u(null)},S=(0,_._)([t,...g],b)||p,O=(0,_._)([n,...g],b,!1,!0),w=S||O;return(0,y.jsxs)(s.Fragment,{children:[(0,y.jsx)(L.A,{tooltip:w?"Upload Files":(0,r.vj)([r.OV.S3_PUT_OBJECT,r.OV.S3_PUT_ACTIONS],"upload files to this bucket"),children:(0,y.jsx)(x.$nd,{id:"upload-main","aria-controls":"upload-main-menu","aria-haspopup":"true","aria-expanded":f?"true":void 0,onClick:e=>{m(!h),u(e.currentTarget)},label:"Upload",icon:(0,y.jsx)(x.JMY,{}),variant:"callAction",disabled:a||!w,sx:c})}),(0,y.jsx)(x.Vey,{id:"upload-main-menu",options:[{label:"Upload File",icon:(0,y.jsx)(x.JMY,{}),value:"file",disabled:!S||a},{label:"Upload Folder",icon:(0,y.jsx)(x.nDF,{}),value:"folder",disabled:!O||a}],selectedOption:"",onSelect:e=>{"folder"!==e?i(v):l(v)},hideTriggerAction:()=>{m(!1)},open:h,anchorEl:d,anchorOrigin:"end",useAnchorWidth:!0})]})},D=e=>{let{open:t,closePanel:n,className:s="",children:o}=e;return(0,y.jsxs)(x.azJ,{id:"details-panel",sx:{borderColor:"#EAEDEE",borderWidth:0,borderStyle:"solid",borderRadius:3,borderBottomLeftRadius:0,borderBottomRightRadius:0,width:0,transitionDuration:"0.3s",overflowX:"hidden",overflowY:"auto",position:"relative",opacity:0,marginLeft:-1,"&.open":{width:300,minWidth:300,borderLeftWidth:1,opacity:1},"@media (max-width: 799px)":{"&.open":{width:"100%",minWidth:"100%",borderLeftWidth:0}}},className:"".concat(t?"open":""," ").concat(s),children:[(0,y.jsx)(x.$nd,{variant:"text",id:"close-details-list",onClick:n,icon:(0,y.jsx)(x._FR,{}),sx:{position:"absolute",right:5,top:18,padding:0,height:14,"&:hover:not(:disabled)":{backgroundColor:"transparent"}}}),o]})};var P=n(48245);const R=e=>{let{icon:t,strings:n}=e;return(0,y.jsxs)(x.azJ,{sx:{display:"flex",alignItems:"center","& .min-icon":{width:16,height:16,marginRight:4,minWidth:16,minHeight:16},"& .fileNameText":{whiteSpace:"pre",overflow:"hidden",textOverflow:"ellipsis"}},children:[t,(0,y.jsx)("span",{className:"fileNameText",children:(0,c.qf)(n[n.length-1])})]})},U=[{icon:(0,y.jsx)(x.FRZ,{}),extensions:["mp4","mov","avi","mpeg","mpg"]},{icon:(0,y.jsx)(x.jCy,{}),extensions:["mp3","m4a","aac"]},{icon:(0,y.jsx)(x.yTC,{}),extensions:["pdf"]},{icon:(0,y.jsx)(x.QvW,{}),extensions:["ppt","pptx"]},{icon:(0,y.jsx)(x.z9t,{}),extensions:["xls","xlsx"]},{icon:(0,y.jsx)(x.VSs,{}),extensions:["cer","crt","pem"]},{icon:(0,y.jsx)(x.bM2,{}),extensions:["html","xml","css","py","go","php","cpp","h","java"]},{icon:(0,y.jsx)(x.qM2,{}),extensions:["cfg","yaml"]},{icon:(0,y.jsx)(x.ITz,{}),extensions:["sql"]},{icon:(0,y.jsx)(x.PcO,{}),extensions:["ttf","otf"]},{icon:(0,y.jsx)(x.yEV,{}),extensions:["doc","docx","txt","rtf"]},{icon:(0,y.jsx)(x.j_m,{}),extensions:["zip","rar","tar","gz"]},{icon:(0,y.jsx)(x.DUd,{}),extensions:["epub","mobi","azw","azw3"]},{icon:(0,y.jsx)(x.nLN,{}),extensions:["jpeg","jpg","gif","tiff","png","heic","dng"]}],z=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=e,s=(0,y.jsx)(x.KlI,{});e.endsWith("/")&&(s=(0,y.jsx)(x.kez,{}),n=e.slice(0,-1));const o=e.toLowerCase();for(const i of U)for(const e of i.extensions)o.endsWith(".".concat(e))&&(s=i.icon);!e.endsWith("/")&&e.indexOf(".")<0&&(s=(0,y.jsx)(x.YJK,{}));const a=n.split("/");return t?s:(0,y.jsx)(R,{icon:s,strings:a})};var G=n(37524);const M=e=>{let{metaData:t}=e;const n=Object.keys(t);return(0,y.jsx)(s.Fragment,{children:n.map(((e,n)=>{const s=(e=>Array.isArray(e)?e.map(c.Tw).join(", "):(0,c.Tw)(e))(t[e]);return(0,y.jsxs)(x.azJ,{sx:{marginBottom:15,fontSize:14,maxHeight:180,overflowY:"auto"},children:[(0,y.jsx)("strong",{children:e}),(0,y.jsx)("br",{}),s]},"box-meta-".concat(e,"-").concat(n.toString()))}))})};var J=n(30718),K=n(85330),W=n(77403);const H=[{value:"01",label:"January"},{value:"02",label:"February"},{value:"03",label:"March"},{value:"04",label:"April"},{value:"05",label:"May"},{value:"06",label:"June"},{value:"07",label:"July"},{value:"08",label:"August"},{value:"09",label:"September"},{value:"10",label:"October"},{value:"11",label:"November"},{value:"12",label:"December"}],Y=Array.from(Array(31),((e,t)=>({value:(t+1).toString(),label:(t+1).toString()}))),$=(new Date).getFullYear(),Z=Array.from(Array(50),((e,t)=>({value:(t+$).toString(),label:(t+$).toString()})));var q=n(94141);const Q=(0,s.forwardRef)(((e,t)=>{let{id:n,label:o,disableOptions:a=!1,tooltip:i="",borderBottom:l=!1,onDateChange:r,value:c=""}=e;(0,s.useImperativeHandle)(t,(()=>({resetDate:b})));const[d,u]=(0,s.useState)(""),[h,m]=(0,s.useState)(""),[p,j]=(0,s.useState)("");(0,s.useEffect)((()=>{if(""!==c){const e=c.split("-");j(e[0]),u(e[1]),m("".concat(parseInt(e[2])))}}),[c]),(0,s.useEffect)((()=>{const[e,t]=((e,t,n)=>{const s=Date.parse("".concat(e,"-").concat(t,"-").concat(n));if(isNaN(s))return[!1,""];const o=parseInt(t),a=parseInt(n),i=o<10?"0".concat(o):o,l=a<10?"0".concat(a):a,r=new Date(s).toISOString().split("T")[0],c="".concat(e,"-").concat(i,"-").concat(l);return[r===c,c]})(p,d,h);r(t,e)}),[d,h,p,r]);const b=()=>{u(""),m(""),j("")},g=()=>a||!1,f=[{value:"",label:""},...H],v=[{value:"",label:""},...Y],_=[{value:"",label:""},...Z];return(0,y.jsxs)(x.azJ,{className:"inputItem",children:[(0,y.jsx)(x.azJ,{sx:{display:"flex",alignItems:"center",gap:5,marginBottom:5},children:(0,y.jsxs)(x.l1Y,{htmlFor:n,children:[(0,y.jsx)("span",{children:o}),""!==i&&(0,y.jsx)(x.azJ,{sx:{marginLeft:5,display:"flex",alignItems:"center","& .min-icon":{width:13}},children:(0,y.jsx)(x.m_M,{tooltip:i,placement:"top",children:(0,y.jsx)(x.azJ,{sx:{"& .min-icon":{width:13}},children:(0,y.jsx)(x.NTw,{})})})})]})}),(0,y.jsxs)(x.azJ,{sx:{display:"flex",gap:12},children:[(0,y.jsx)(x.l6P,{id:"".concat(n,"-month"),name:"".concat(n,"-month"),value:d,onChange:e=>{u(e)},options:f,label:"",disabled:g()}),(0,y.jsx)(x.l6P,{id:"".concat(n,"-day"),name:"".concat(n,"-day"),value:h,onChange:e=>{m(e)},options:v,label:"",disabled:g()}),(0,y.jsx)(x.l6P,{id:"".concat(n,"-year"),name:"".concat(n,"-year"),value:p,onChange:e=>{j(e)},options:_,label:"",disabled:g(),sx:{marginBottom:12}})]})]})})),X=e=>{let{open:t,closeModalAndRefresh:n,objectName:a,objectInfo:r,bucketName:d}=e;const u=(0,l.jL)(),h=(0,o.d4)((e=>e.objectBrowser.retentionConfig)),[p,j]=(0,s.useState)(!0),[b,g]=(0,s.useState)(""),[f,v]=(0,s.useState)(""),[_,S]=(0,s.useState)(!1),[w,T]=(0,s.useState)(!1),[C,E]=(0,s.useState)(!1);(0,s.useEffect)((()=>{if(r.retention_mode&&(g((null===h||void 0===h?void 0:h.mode)||K.BT.Governance),E(!0)),r.retention_until_date){const t=new Date(r.retention_until_date);if("Invalid Date"!==t.toString()){const n=t.getFullYear(),s=(e=t.getMonth()+1)<10?"0".concat(e):"".concat(e),o=t.getDate();isNaN(o)||"NaN"===s||isNaN(n)||v("".concat(n,"-").concat(s,"-").concat(o))}E(!0)}var e}),[r,null===h||void 0===h?void 0:h.mode]);const N=(0,s.useRef)(null),A=()=>{j(!1),g(K.BT.Governance),N.current&&N.current.resetDate()},I=C&&("governance"===b||""===b);return(0,y.jsx)(q.A,{title:"Set Retention Policy",modalOpen:t,onClose:()=>{A(),n(!1)},children:(0,y.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:e=>{(e=>{e.preventDefault()})(e)},children:(0,y.jsxs)(x.Hbc,{withBorders:!1,containerPadding:!1,children:[(0,y.jsxs)(x.azJ,{className:"inputItem",children:[(0,y.jsx)("strong",{children:"Selected Object"}),": ",a]}),I&&(0,y.jsx)(x.dOG,{value:"status",id:"status",name:"status",checked:p,onChange:e=>{j(!p)},label:"Status",indicatorLabels:["Enabled","Disabled"]}),(0,y.jsx)(x.z6M,{currentValue:b,id:"type",name:"type",label:"Type",disableOptions:!p||C&&""!==b,onChange:e=>{g(e.target.value)},selectorOptions:[{label:"Governance",value:K.BT.Governance},{label:"Compliance",value:K.BT.Compliance}]}),(0,y.jsx)(Q,{id:"date",label:"Date",disableOptions:!(p&&("governance"===b||"compliance"===b)),ref:N,value:f,borderBottom:!0,onDateChange:(e,t)=>{S(t),t&&v(e)}}),(0,y.jsxs)(x.xA9,{item:!0,xs:12,sx:W.Uz.modalButtonBar,children:[(0,y.jsx)(x.$nd,{id:"reset",type:"button",variant:"regular",onClick:A,label:"Reset"}),(0,y.jsx)(x.$nd,{id:"save",type:"submit",variant:"callAction",disabled:p&&""===b||p&&!_||w,onClick:()=>{T(!0);const e=r.name||"",t=r.version_id||null,s=p||"governance"!==b?"".concat(f,"T23:59:59Z"):"";p||"governance"!==b?((e,t,s)=>{i.F.buckets.putObjectRetention(d,{prefix:(0,c.nf)(e),version_id:t||""},{expires:s,mode:b}).then((()=>{T(!1),n(!0)})).catch((e=>{u((0,O.Dy)((0,m.S)(e.error))),T(!1)}))})(e,t,s):((e,t)=>{i.F.buckets.deleteObjectRetention(d,{prefix:(0,c.nf)(e),version_id:t||""}).then((()=>{T(!1),n(!0)})).catch((e=>{u((0,O.Dy)((0,m.S)(e.error))),T(!1)}))})(e,t)},label:"Save"})]})]})})})};var ee=n(58661),te=n(25448);const ne=e=>{let{closeDeleteModalAndRefresh:t,deleteOpen:n,selectedBucket:a,selectedObject:i,versioningInfo:d,selectedVersion:u=""}=e;const h=(0,l.jL)(),[m,p]=(0,te.A)((()=>t(!0)),(e=>{h((0,O.C9)(e)),"Access Denied."===e.detailedError&&t(!0)})),[j,b]=(0,s.useState)(!1),[g,f]=(0,s.useState)(!1),v=(0,o.d4)((e=>e.objectBrowser.retentionConfig)),S=(0,_._)([a],[r.OV.S3_BYPASS_GOVERNANCE_RETENTION])&&"governance"===(null===v||void 0===v?void 0:v.mode);if(!i)return null;return(0,y.jsx)(ee.A,{title:"Delete Object",confirmText:"Delete",isOpen:n,titleIcon:(0,y.jsx)(x.xWY,{}),isLoading:m,onConfirm:()=>{const e=(0,c.x6)(i).endsWith("/");p("DELETE","/api/v1/buckets/".concat(a,"/objects?prefix=").concat(i).concat(""!==u?"&version_id=".concat(u):"&recursive=".concat(e,"&all_versions=").concat(j)).concat(g?"&bypass=true":""))},onClose:()=>t(!1),confirmationContent:(0,y.jsxs)(s.Fragment,{children:["Are you sure you want to delete: ",(0,y.jsx)("br",{}),(0,y.jsx)("b",{children:(0,c.x6)(i)})," ",""!==u?(0,y.jsxs)(s.Fragment,{children:[(0,y.jsx)("br",{}),(0,y.jsx)("br",{}),"Version ID:",(0,y.jsx)("br",{}),(0,y.jsx)("strong",{children:u})]}):"","? ",(0,y.jsx)("br",{}),(0,y.jsx)("br",{}),I(null===d||void 0===d?void 0:d.status)&&""===u&&(0,y.jsx)(s.Fragment,{children:(0,y.jsx)(x.dOG,{label:"Delete All Versions",indicatorLabels:["Yes","No"],checked:j,value:"delete_versions",id:"delete-versions",name:"delete-versions",onChange:e=>{b(!j)},description:""})}),S&&(j||""!==u)&&(0,y.jsx)(s.Fragment,{children:(0,y.jsx)("div",{style:{marginTop:10},children:(0,y.jsx)(x.dOG,{label:"Bypass Governance Mode",indicatorLabels:["Yes","No"],checked:g,value:"bypass_governance",id:"bypass_governance",name:"bypass_governance",onChange:e=>{f(!g)},description:""})})}),j&&(0,y.jsxs)(s.Fragment,{children:[(0,y.jsxs)("div",{style:{marginTop:10,border:"#c83b51 1px solid",borderRadius:3,padding:5,backgroundColor:"#c83b5120",color:"#c83b51"},children:["This will remove the object as well as all of its versions,"," ",(0,y.jsx)("br",{}),"This action is irreversible."]}),(0,y.jsx)("br",{}),"Are you sure you want to continue?"]})]})})},se=e=>{let{open:t,closeModalAndRefresh:n,objectName:o,bucketName:a,actualInfo:r}=e;const d=(0,l.jL)(),[u,p]=(0,s.useState)(!1),[j,b]=(0,s.useState)(!1),g=r.version_id;(0,s.useEffect)((()=>{const e=h()(r,"legal_hold_status","OFF");p("ON"===e)}),[r]);const f=()=>{p(!1)};return(0,y.jsx)(q.A,{title:"Set Legal Hold",modalOpen:t,onClose:()=>{f(),n(!1)},children:(0,y.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:e=>{(e=>{e.preventDefault(),b(!0),i.F.buckets.putObjectLegalHold(a,{prefix:(0,c.nf)(o),version_id:g||""},{status:u?K.SW.Enabled:K.SW.Disabled}).then((()=>{b(!1),n(!0)})).catch((e=>{d((0,O.Dy)((0,m.S)(e.error))),b(!1)}))})(e)},children:(0,y.jsxs)(x.Hbc,{withBorders:!1,containerPadding:!1,children:[(0,y.jsxs)(x.azJ,{className:"inputItem",children:[(0,y.jsx)("strong",{children:"Object"}),": ",a]}),(0,y.jsx)(x.dOG,{value:"legalhold",id:"legalhold",name:"legalhold",checked:u,onChange:e=>{p(!u)},label:"Legal Hold Status",indicatorLabels:["Enabled","Disabled"],tooltip:"To enable this feature you need to enable versioning on the bucket before creation"}),(0,y.jsxs)(x.xA9,{item:!0,xs:12,sx:W.Uz.modalButtonBar,children:[(0,y.jsx)(x.$nd,{id:"clear",type:"button",variant:"regular",onClick:f,label:"Clear"}),(0,y.jsx)(x.$nd,{id:"save",type:"submit",variant:"callAction",disabled:j,label:" Save"})]})]})})})},oe=f.Ay.b((e=>{let{theme:t}=e;return{color:h()(t,"signalColors.danger","#C83B51"),marginLeft:5}})),ae=e=>{var t;let{modalOpen:n,onCloseAndUpdate:a,bucketName:d,actualInfo:u}=e;const p=(0,l.jL)(),j=(0,o.d4)(O.Rq),[b,g]=(0,s.useState)(""),[f,v]=(0,s.useState)(""),[S,w]=(0,s.useState)(!1),[T,C]=(0,s.useState)(!1),[E,N]=(0,s.useState)(""),[A,I]=(0,s.useState)(""),k=(0,c.nf)(u.name||""),B=u.tags,F=Object.keys(B||{}),L=null===(t=u.name)||void 0===t?void 0:t.split("/"),V=(null===L||void 0===L?void 0:L.pop())||"",D=e=>(0,y.jsxs)(x.azJ,{sx:{fontSize:16,margin:"20px 0 30px",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",width:"100%"},children:["Tag",e?"s":""," for: ",(0,y.jsx)("strong",{children:V})]});return(0,y.jsx)(s.Fragment,{children:(0,y.jsx)(q.A,{modalOpen:n,title:T?"Delete Tag":"Edit Tags",onClose:()=>{a(!0)},iconColor:T?"delete":"default",titleIcon:T?(0,y.jsx)(x.aaC,{}):(0,y.jsx)(x.cGQ,{}),children:T?(0,y.jsx)(s.Fragment,{children:(0,y.jsxs)(x.xA9,{container:!0,children:[D(!1),"Are you sure you want to delete the tag"," ",(0,y.jsxs)(oe,{children:[E," : ",A]})," ","?",(0,y.jsxs)(x.xA9,{item:!0,xs:12,sx:W.Uz.modalButtonBar,children:[(0,y.jsx)(x.$nd,{id:"cancel",type:"button",variant:"regular",onClick:()=>{N(""),I(""),C(!1)},label:"Cancel"}),(0,y.jsx)(x.$nd,{type:"submit",variant:"secondary",onClick:()=>{const e={...B};delete e[E];const t=j?u.version_id||"":"null";i.F.buckets.putObjectTags(d,{prefix:k,version_id:t},{tags:e}).then((()=>{a(!0),w(!1)})).catch((e=>{p((0,O.Dy)((0,m.S)(e.error))),w(!1)}))},id:"deleteTag",label:"Delete Tag"})]})]})}):(0,y.jsxs)(x.azJ,{children:[(0,y.jsx)(_.R,{scopes:[r.OV.S3_GET_OBJECT_TAGGING,r.OV.S3_GET_ACTIONS],resource:d,children:(0,y.jsxs)(x.azJ,{sx:{display:"flex",flexFlow:"column",width:"100%"},children:[D(!0),(0,y.jsxs)(x.azJ,{sx:{fontSize:14,fontWeight:"normal"},children:["Current Tags:",(0,y.jsx)("br",{}),0===F.length?(0,y.jsx)("span",{className:"muted",children:"There are no tags for this object"}):(0,y.jsx)(s.Fragment,{}),(0,y.jsx)(x.azJ,{sx:{marginTop:"5px",marginBottom:"15px"},children:F.map(((e,t)=>{const n=h()(B,"".concat(e),"");return""!==n?(0,y.jsx)(_.R,{scopes:[r.OV.S3_DELETE_OBJECT_TAGGING],resource:d,errorProps:{deleteIcon:null,onDelete:null},children:(0,y.jsx)(x.vwO,{id:"".concat(e," : ").concat(n),label:"".concat(e," : ").concat(n),variant:"regular",color:"default",onDelete:()=>{((e,t)=>{N(e),I(t),C(!0)})(e,n)}})},"chip-".concat(t)):null}))})]})]})}),(0,y.jsx)(_.R,{scopes:[r.OV.S3_PUT_OBJECT_TAGGING,r.OV.S3_PUT_ACTIONS],resource:d,errorProps:{disabled:!0,onClick:null},children:(0,y.jsxs)(x.azJ,{children:[(0,y.jsx)(x._xt,{icon:(0,y.jsx)(x.b_$,{}),separator:!1,children:"Add New Tag"}),(0,y.jsxs)(x.Hbc,{containerPadding:!1,withBorders:!1,children:[(0,y.jsx)(x.cl_,{value:b,label:"Tag Key",id:"newTagKey",name:"newTagKey",placeholder:"Enter Tag Key",onChange:e=>{g(e.target.value)}}),(0,y.jsx)(x.cl_,{value:f,label:"Tag Label",id:"newTagLabel",name:"newTagLabel",placeholder:"Enter Tag Label",onChange:e=>{v(e.target.value)}}),(0,y.jsxs)(x.xA9,{item:!0,xs:12,sx:W.Uz.modalButtonBar,children:[(0,y.jsx)(x.$nd,{id:"clear",type:"button",variant:"regular",color:"primary",onClick:()=>{v(""),g("")},label:"Clear"}),(0,y.jsx)(x.$nd,{type:"submit",variant:"callAction",disabled:""===f.trim()||""===b.trim()||S,onClick:()=>{w(!0);const e={};e[b]=f;const t={...B,...e},n=j?u.version_id||"":"null";i.F.buckets.putObjectTags(d,{prefix:k,version_id:n},{tags:t}).then((()=>{a(!0),w(!1)})).catch((e=>{p((0,O.Dy)((0,m.S)(e.error))),w(!1)}))},id:"saveTag",label:"Save"})]})]})]})})]})})})};var ie=n(49501);const le=e=>{let{closeInspectModalAndRefresh:t,inspectOpen:n,inspectPath:o,volumeName:a}=e;const i=(0,l.jL)(),r=()=>t(!1),[d,u]=(0,s.useState)(!0),[h,m]=(0,s.useState)(""),[p,j]=(0,s.useState)("");if(!o)return null;return(0,y.jsxs)(s.Fragment,{children:[!h&&(0,y.jsx)(q.A,{modalOpen:n,titleIcon:(0,y.jsx)(x.nTF,{}),title:"Inspect Object",onClose:r,children:(0,y.jsxs)("form",{noValidate:!0,autoComplete:"off",onSubmit:e=>{(e=>{e.preventDefault()})(e)},children:["Would you like to encrypt ",(0,y.jsx)("b",{children:(0,c.x6)(o)}),"?"," ",(0,y.jsx)("br",{}),(0,y.jsx)(x.dOG,{label:"Encrypt",indicatorLabels:["Yes","No"],checked:d,value:"encrypt",id:"encrypt",name:"encrypt",onChange:e=>{u(!d)},description:""}),(0,y.jsx)(x.xA9,{item:!0,xs:12,sx:W.Uz.modalButtonBar,children:(0,y.jsx)(x.$nd,{id:"inspect",type:"submit",variant:"callAction",color:"primary",onClick:async()=>{const e=(0,c.nf)(o+"/xl.meta"),t=(0,c.nf)(a);let n=document.baseURI.replace(window.location.origin,"");(async e=>await fetch(e,{method:"GET"}))("".concat(window.location.origin).concat(n,"/api/v1/admin/inspect?volume=").concat(t,"&file=").concat(e,"&encrypt=").concat(d)).then((async e=>{if(!e.ok){const t=await e.json();i((0,O.C9)({errorMessage:t.message,detailedError:t.code}))}const t=await e.blob(),n=e.headers.get("content-disposition").split('"')[1],s=(0,c.UM)(n)||"";(0,c.OT)(t,n),j(n),""!==s?m(s):r()})).catch((e=>{i((0,O.C9)(e))}))},label:"Inspect"})})]})}),h?(0,y.jsxs)(q.A,{modalOpen:n,title:"Inspect Decryption Key",onClose:()=>{(0,c.Yj)(p),r(),m("")},titleIcon:(0,y.jsx)(x.aJN,{}),children:[(0,y.jsxs)(x.azJ,{children:["This will be displayed only once. It cannot be recovered.",(0,y.jsx)("br",{}),"Use secure medium to share this key."]}),(0,y.jsx)(x.azJ,{children:(0,y.jsx)(ie.A,{value:h})})]}):null]})},re=e=>{let{open:t,closeModal:n,currentItem:o,internalPaths:a,actualInfo:i,bucketName:r}=e;const c=(0,l.jL)(),[d,u]=(0,s.useState)(o),[h,m]=(0,s.useState)(!1);return(0,y.jsxs)(q.A,{title:"Rename Download",modalOpen:t,onClose:n,titleIcon:(0,y.jsx)(x.qUP,{}),children:[(0,y.jsxs)("div",{children:["The file you are trying to download has a long name.",(0,y.jsx)("br",{}),"This can cause issues on Windows Systems by trimming the file name after download.",(0,y.jsx)("br",{}),(0,y.jsx)("br",{})," We recommend to rename the file download"]}),(0,y.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:e=>{(e=>{e.preventDefault(),(0,P._)(c,r,a,i),n()})(e)},children:(0,y.jsxs)(x.Hbc,{withBorders:!1,containerPadding:!1,children:[(0,y.jsx)(x.cl_,{id:"download-filename",name:"download-filename",onChange:e=>{u(e.target.value)},label:"",type:"text",value:d,error:d.length>200&&!h?"Filename should be less than 200 characters long.":""}),(0,y.jsx)(x.dOG,{value:"acceptLongName",id:"acceptLongName",name:"acceptLongName",checked:h,onChange:e=>{m(e.target.checked),e.target.checked&&u(o)},label:"Use Original Name"}),(0,y.jsx)(x.xA9,{item:!0,xs:12,sx:W.Uz.modalButtonBar,children:(0,y.jsx)(x.$nd,{id:"download-file",type:"submit",variant:"callAction",color:"primary",disabled:d.length>200&&!h,label:"Download File"})})]})})]})},ce={is_latest:!0,last_modified:"",legal_hold_status:"",name:"",retention_mode:"",retention_until_date:"",size:0,tags:{},version_id:void 0},de=e=>{let{internalPaths:t,bucketName:n,versioningInfo:a,locking:u,onClosePanel:m}=e;const p=(0,l.jL)(),j=(0,o.d4)(O.Rq),b=(0,o.d4)((e=>e.objectBrowser.versionsMode)),g=(0,o.d4)((e=>e.objectBrowser.selectedVersion)),f=(0,o.d4)((e=>e.objectBrowser.loadingObjectInfo)),[v,S]=(0,s.useState)(!1),[w,T]=(0,s.useState)(!1),[C,E]=(0,s.useState)(!1),[N,I]=(0,s.useState)(!1),[k,B]=(0,s.useState)(!1),[F,V]=(0,s.useState)(null),[D,R]=(0,s.useState)([]),[U,K]=(0,s.useState)(null),[W,H]=(0,s.useState)([]),[Y,$]=(0,s.useState)(!1),[Z,q]=(0,s.useState)(!1),[Q,ee]=(0,s.useState)(0),[te,oe]=(0,s.useState)(!1),[ie,de]=(0,s.useState)(null),[ue,he]=(0,s.useState)(!1),xe=((0,c.x6)(t)||"").split("/").pop()||"";let me=[];F&&F.name&&(me=F.name.split("/")),(0,s.useEffect)((()=>{if(j&&D&&D.length>=1){let e=D.find((e=>e.is_latest))||ce;""!==g&&(e=D.find((e=>e.version_id===g))||ce),e.is_delete_marker||he(!0),V(e)}}),[g,j,D]),(0,s.useEffect)((()=>{f&&""!==t&&i.F.buckets.listObjects(n,{prefix:t,with_versions:j}).then((e=>{const t=e.data.objects||[];if(j){R(t),H(t);const e=t.reduce(((e,t)=>null!==t&&void 0!==t&&t.size?e+t.size:e),0);ee(e)}else{const e=t[0];V(e),H([]),e.is_delete_marker||he(!0)}p((0,d.oe)(!1))})).catch((e=>{console.error("Error loading object details",e.error),p((0,d.oe)(!1))}))}),[f,n,t,p,j,g]),(0,s.useEffect)((()=>{ue&&""!==t&&i.F.buckets.getObjectMetadata(n,{prefix:t}).then((e=>{let t=h()(e.data,"objectMetadata",{});de(t),he(!1)})).catch((e=>{console.error("Error Getting Metadata Status: ",e.detailedError),he(!1)}))}),[n,t,ue]);let pe=[];F&&F.tags&&(pe=Object.keys(F.tags));const je=(0,y.jsx)("div",{style:{textAlign:"center",marginTop:35},children:(0,y.jsx)(x.aHM,{})});if(!F)return f?je:null;const be=me.length>0?me[me.length-1]:F.name,ge=[n,xe,[n,F.name].join("/")],fe=(0,_._)(n,[r.OV.S3_PUT_OBJECT_LEGAL_HOLD,r.OV.S3_PUT_ACTIONS]),ve=(0,_._)(ge,[r.OV.S3_PUT_OBJECT_TAGGING,r.OV.S3_PUT_ACTIONS]),_e=(0,_._)(ge,[r.OV.S3_GET_OBJECT_RETENTION,r.OV.S3_PUT_OBJECT_RETENTION,r.OV.S3_GET_ACTIONS,r.OV.S3_PUT_ACTIONS],!0),Se=(0,_._)(ge,[r.OV.ADMIN_INSPECT_DATA]),Oe=(0,_._)(ge,[r.OV.S3_GET_BUCKET_VERSIONING,r.OV.S3_PUT_BUCKET_VERSIONING,r.OV.S3_GET_OBJECT_VERSION,r.OV.S3_GET_ACTIONS,r.OV.S3_PUT_ACTIONS]),we=(0,_._)(ge,[r.OV.S3_GET_OBJECT,r.OV.S3_GET_ACTIONS]),Te=(0,_._)([n,xe,[n,F.name].join("/")],[r.OV.S3_DELETE_OBJECT]);let ye=(0,A.IZ)(ie,xe);const Ce=[{action:()=>{(0,P._)(p,n,t,F)},label:"Download",disabled:!!F.is_delete_marker||!we,icon:(0,y.jsx)(x.s3U,{}),tooltip:we?"Download this Object":(0,r.vj)([r.OV.S3_GET_OBJECT,r.OV.S3_GET_ACTIONS],"download this object")},{action:()=>{S(!0)},label:"Share",disabled:!!F.is_delete_marker||!we,icon:(0,y.jsx)(x.liv,{}),tooltip:we?"Share this File":(0,r.vj)([r.OV.S3_GET_OBJECT,r.OV.S3_GET_ACTIONS],"share this object")},{action:()=>{q(!0)},label:"Preview",disabled:!!F.is_delete_marker||"none"===ye&&!we,icon:(0,y.jsx)(x.cyn,{}),tooltip:we?"Preview this File":(0,r.vj)([r.OV.S3_GET_OBJECT,r.OV.S3_GET_ACTIONS],"preview this object")},{action:()=>{I(!0)},label:"Legal Hold",disabled:!u||!j||!!F.is_delete_marker||!fe||""!==g,icon:(0,y.jsx)(x.ODz,{}),tooltip:fe?u?"Change Legal Hold rules for this File":"Object Locking must be enabled on this bucket in order to set Legal Hold":(0,r.vj)([r.OV.S3_PUT_OBJECT_LEGAL_HOLD,r.OV.S3_PUT_ACTIONS],"change legal hold settings for this object")},{action:()=>{T(!0)},label:"Retention",disabled:!j||!!F.is_delete_marker||!_e||""!==g||!u,icon:(0,y.jsx)(x.gn6,{}),tooltip:_e?u?"Change Retention rules for this File":"Object Locking must be enabled on this bucket in order to set Retention Rules":(0,r.vj)([r.OV.S3_GET_OBJECT_RETENTION,r.OV.S3_PUT_OBJECT_RETENTION,r.OV.S3_GET_ACTIONS,r.OV.S3_PUT_ACTIONS],"change Retention Rules for this object")},{action:()=>{E(!0)},label:"Tags",disabled:!!F.is_delete_marker||""!==g||!ve,icon:(0,y.jsx)(x.P3Z,{}),tooltip:ve?"Change Tags for this File":(0,r.vj)([r.OV.S3_PUT_OBJECT_TAGGING,r.OV.S3_GET_OBJECT_TAGGING,r.OV.S3_GET_ACTIONS,r.OV.S3_PUT_ACTIONS],"set Tags on this object")},{action:()=>{B(!0)},label:"Inspect",disabled:!j||!!F.is_delete_marker||""!==g||!Se,icon:(0,y.jsx)(x.nTF,{}),tooltip:Se?"Inspect this file":(0,r.vj)([r.OV.ADMIN_INSPECT_DATA],"inspect this file")},{action:()=>{p((0,d.cQ)({status:!b,objectName:be}))},label:b?"Hide Object Versions":"Display Object Versions",icon:(0,y.jsx)(x.j1U,{}),disabled:!j||!(F.version_id&&"null"!==F.version_id)||!Oe,tooltip:Oe?F.version_id&&"null"!==F.version_id?"Display Versions for this file":"":(0,r.vj)([r.OV.S3_GET_BUCKET_VERSIONING,r.OV.S3_PUT_BUCKET_VERSIONING,r.OV.S3_GET_OBJECT_VERSION,r.OV.S3_GET_ACTIONS,r.OV.S3_PUT_ACTIONS],"display all versions of this object")}];return(0,y.jsxs)(s.Fragment,{children:[v&&F&&(0,y.jsx)(J.default,{open:v,closeModalAndRefresh:()=>{K(null),S(!1)},bucketName:n,dataObject:U||F}),w&&F&&(0,y.jsx)(X,{open:w,closeModalAndRefresh:e=>{T(!1),e&&p((0,d.oe)(!0))},objectName:xe,objectInfo:F,bucketName:n}),Y&&(0,y.jsx)(ne,{deleteOpen:Y,selectedBucket:n,selectedObject:t,closeDeleteModalAndRefresh:e=>{$(!1),e&&""===g?m(!0):(p((0,d.SK)(!0)),p((0,d.Ai)("")),p((0,d.oe)(!0)))},versioningInfo:j?a:void 0,selectedVersion:g}),N&&F&&(0,y.jsx)(se,{open:N,closeModalAndRefresh:e=>{I(!1),e&&p((0,d.oe)(!0))},objectName:F.name||"",bucketName:n,actualInfo:F}),Z&&F&&(0,y.jsx)(G.default,{open:Z,bucketName:n,actualInfo:F,onClosePreview:()=>{q(!1)}}),C&&F&&(0,y.jsx)(ae,{modalOpen:C,bucketName:n,actualInfo:F,onCloseAndUpdate:e=>{E(!1),e&&p((0,d.oe)(!0))}}),k&&F&&(0,y.jsx)(le,{inspectOpen:k,volumeName:n,inspectPath:F.name||"",closeInspectModalAndRefresh:e=>{B(!1),e&&p((0,d.oe)(!0))}}),te&&F&&(0,y.jsx)(re,{open:te,closeModal:()=>{oe(!1)},currentItem:xe,bucketName:n,internalPaths:t,actualInfo:F}),f?(0,y.jsx)(s.Fragment,{children:je}):(0,y.jsxs)(x.azJ,{sx:{"& .ObjectDetailsTitle":{display:"flex",alignItems:"center","& .min-icon":{width:26,height:26,minWidth:26,minHeight:26}},"& .objectNameContainer":{whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden",alignItems:"center",marginLeft:10},"& .capitalizeFirst":{textTransform:"capitalize"},"& .detailContainer":{padding:"0 22px",marginBottom:10,fontSize:14}},children:[(0,y.jsx)(x.Smc,{title:(0,y.jsxs)("div",{className:"ObjectDetailsTitle",children:[z(be||"",!0),(0,y.jsx)("span",{className:"objectNameContainer",children:be})]}),items:Ce}),(0,y.jsx)(L.A,{tooltip:Te?"":(0,r.vj)([r.OV.S3_DELETE_OBJECT],"delete this object"),children:(0,y.jsx)(x.xA9,{item:!0,xs:12,sx:{justifyContent:"center",display:"flex"},children:(0,y.jsx)(_.R,{resource:[n,xe,[n,F.name].join("/")],scopes:[r.OV.S3_DELETE_OBJECT],errorProps:{disabled:!0},children:(0,y.jsx)(x.$nd,{id:"delete-element-click",icon:(0,y.jsx)(x.d7y,{}),iconLocation:"start",fullWidth:!0,variant:"secondary",onClick:()=>{$(!0)},disabled:""===g&&F.is_delete_marker,sx:{width:"calc(100% - 44px)",margin:"8px 0"},label:"Delete".concat(""!==g?" version":"")})})})}),(0,y.jsx)(x.kCK,{icon:(0,y.jsx)(x.Hch,{}),label:"Object Info"}),(0,y.jsxs)(x.azJ,{className:"detailContainer",children:[(0,y.jsx)("strong",{children:"Name:"}),(0,y.jsx)("br",{}),(0,y.jsx)("div",{style:{overflowWrap:"break-word"},children:be})]}),""!==g&&(0,y.jsxs)(x.azJ,{className:"detailContainer",children:[(0,y.jsx)("strong",{children:"Version ID:"}),(0,y.jsx)("br",{}),g]}),(0,y.jsxs)(x.azJ,{className:"detailContainer",children:[(0,y.jsx)("strong",{children:"Size:"}),(0,y.jsx)("br",{}),(0,c.nO)("".concat(F.size||"0"))]}),F.version_id&&"null"!==F.version_id&&""===g&&(0,y.jsxs)(x.azJ,{className:"detailContainer",children:[(0,y.jsx)("strong",{children:"Versions:"}),(0,y.jsx)("br",{}),W.length," version",1!==W.length?"s":"",","," ",(0,c.qO)(Q)]}),""===g&&(0,y.jsxs)(x.azJ,{className:"detailContainer",children:[(0,y.jsx)("strong",{children:"Last Modified:"}),(0,y.jsx)("br",{}),(e=>{const t=new Date,n=new Date(e),s=t.getTime()-n.getTime(),o=(0,c.eQ)(s,"ms");return""!==o.trim()?"".concat(o," ago"):"Just now"})(F.last_modified||"")]}),(0,y.jsxs)(x.azJ,{className:"detailContainer",children:[(0,y.jsx)("strong",{children:"ETAG:"}),(0,y.jsx)("br",{}),F.etag||"N/A"]}),(0,y.jsxs)(x.azJ,{className:"detailContainer",children:[(0,y.jsx)("strong",{children:"Tags:"}),(0,y.jsx)("br",{}),0===pe.length?"N/A":pe.map(((e,t)=>(0,y.jsxs)("span",{children:[e,":",h()(F,"tags.".concat(e),""),t{let{versionToRestore:t,bucketName:n,objectPath:o,restoreOpen:a,onCloseAndUpdate:r}=e;const u=(0,l.jL)(),[h,p]=(0,s.useState)(!1);return(0,y.jsx)(ee.A,{title:"Restore File Version",confirmText:"Restore",isOpen:a,isLoading:h,titleIcon:(0,y.jsx)(x.YkU,{}),onConfirm:()=>{p(!0),i.F.buckets.putObjectRestore(n,{prefix:(0,c.nf)(o),version_id:t.version_id||""}).then((()=>{p(!1),r(!0),u((0,d.NV)({prefix:o,objectInfo:t}))})).catch((e=>{u((0,O.C9)((0,m.S)(e.error))),p(!1)}))},confirmButtonProps:{variant:"secondary",disabled:h},onClose:()=>{r(!1)},confirmationContent:(0,y.jsxs)(x.azJ,{id:"alert-dialog-description",children:["Are you sure you want to restore ",(0,y.jsx)("br",{}),(0,y.jsx)("b",{children:o})," ",(0,y.jsx)("br",{})," with Version ID:",(0,y.jsx)("br",{}),(0,y.jsx)("b",{children:t.version_id}),"?"]})})},he=e=>{let{type:t}=e,n="#000",s="";switch(t){case"null":n="#07193E",s="NULL VERSION";break;case"deleted":n="#868686",s="DELETED";break;default:n="#174551",s="CURRENT VERSION"}return(0,y.jsx)("span",{style:{backgroundColor:n,padding:"0 5px",display:"inline-block",color:"#FFF",fontWeight:"bold",fontSize:12,borderRadius:2,whiteSpace:"nowrap",margin:"0 10px"},children:s})},xe=f.Ay.div((e=>{let{theme:t}=e;return{"&:before":{content:"' '",display:"block",position:"absolute",width:"2px",height:"calc(100% + 2px)",backgroundColor:h()(t,"borderColor","#F8F8F8"),left:"24px"},"& .mainFileVersionItem":{borderBottom:"".concat(h()(t,"borderColor","#F8F8F8")," 1px solid"),padding:"1rem 0",margin:"0 0.5rem 0 2.5rem",cursor:"pointer","&.deleted":{color:"#868686"}},"& .intermediateLayer":{margin:"0 1.5rem 0 1.5rem","&:hover, &.selected":{backgroundColor:h()(t,"boxBackground","#F8F8F8"),"& > div":{borderBottomColor:h()(t,"boxBackground","#F8F8F8")}}},"& .versionContainer":{fontSize:16,fontWeight:"bold",display:"flex",alignItems:"center","& svg.min-icon":{width:18,height:18,minWidth:18,minHeight:18,marginRight:10}},"& .buttonContainer":{textAlign:"right","& button":{marginLeft:"1.5rem"}},"& .versionID":{fontSize:"12px",margin:"2px 0",whiteSpace:"nowrap",textOverflow:"ellipsis",maxWidth:"95%",overflow:"hidden"},"& .versionData":{marginRight:"10px",fontSize:12,color:"#868686"},"@media (max-width: 600px)":{"& .buttonContainer":{"& button":{marginLeft:"5px"}}},"@media (max-width: 799px)":{"&:before":{display:"none"},"& .mainFileVersionItem":{padding:"5px 0px",margin:0},"& .intermediateLayer":{margin:0,"&:hover, &.selected":{backgroundColor:"transparent","& > div":{borderBottomColor:h()(t,"boxBackground","#F8F8F8")}}},"& .versionContainer":{fontSize:14,"& svg.min-icon":{display:"none"}},"& .versionData":{textOverflow:"ellipsis",maxWidth:"95%",overflow:"hidden",whiteSpace:"nowrap"},"& .collapsableInfo":{display:"flex",flexDirection:"column"},"& .versionItem":{display:"none"}}}})),me=e=>{let{fileName:t,versionInfo:n,isSelected:s,checkable:o,isChecked:a,onCheck:i,onShare:l,onDownload:r,onRestore:d,onPreview:u,globalClick:h,index:m,key:p,style:b}=e;const g=n.is_delete_marker,f=[{icon:(0,y.jsx)(x.cyn,{}),action:u,tooltip:"Preview"},{icon:(0,y.jsx)(x.s3U,{}),action:r,tooltip:"Download this version"},{icon:(0,y.jsx)(x.liv,{}),action:l,tooltip:"Share this version"},{icon:(0,y.jsx)(x.YkU,{}),action:d,tooltip:"Restore this version"}];let v=null;n.is_delete_marker?v="deleted":n.is_latest?v="current":"null"===n.version_id&&(v="null");let _=j.c9.now();return n.last_modified&&(_=j.c9.fromISO(n.last_modified)),(0,y.jsx)(xe,{children:(0,y.jsx)(x.xA9,{container:!0,className:"ctrItem",onClick:()=>{h(n)},style:b,children:(0,y.jsx)(x.xA9,{item:!0,xs:12,className:"intermediateLayer".concat(" ",s?"selected":""),children:(0,y.jsxs)(x.xA9,{item:!0,xs:!0,className:"mainFileVersionItem ".concat(n.is_delete_marker?"deleted":""),children:[(0,y.jsx)(x.xA9,{item:!0,xs:12,children:(0,y.jsxs)(x.xA9,{container:!0,children:[(0,y.jsxs)(x.xA9,{item:!0,xs:!0,md:4,className:"versionContainer",children:[o&&(0,y.jsx)(x.Sc0,{checked:a,id:"select-".concat(n.version_id),name:"select-".concat(n.version_id),onChange:e=>{e.stopPropagation(),i(n.version_id||"")},value:n.version_id||"",disabled:n.is_delete_marker,sx:{width:"initial"}}),z(t,!0)," v",m.toString(),(0,y.jsx)("span",{className:"versionItem",children:v&&(0,y.jsx)(he,{type:v})})]}),(0,y.jsx)(x.xA9,{item:!0,xs:10,md:8,className:"buttonContainer",children:f.map(((e,t)=>(0,y.jsx)(x.m_M,{tooltip:e.tooltip,children:(0,y.jsx)(x.K0,{size:"small",id:"version-action-".concat(e.tooltip,"-").concat(t.toString()),className:"spacing".concat(" ",g?"buttonDisabled":""),disabled:g,onClick:t=>{t.stopPropagation(),g?t.preventDefault():e.action(n)},sx:{backgroundColor:"#F8F8F8",borderRadius:"100%",width:"28px",height:"28px",padding:"5px","& .min-icon":{width:"14px",height:"14px"}},children:e.icon})},"version-action-".concat(e.tooltip,"-").concat(t.toString()))))})]})}),(0,y.jsx)(x.xA9,{item:!0,xs:12,className:"versionID",children:"null"!==n.version_id?n.version_id:"-"}),(0,y.jsxs)(x.xA9,{item:!0,xs:12,className:"collapsableInfo",children:[(0,y.jsxs)("span",{className:"versionData",children:[(0,y.jsx)("strong",{children:"Last modified:"})," ",_.toFormat("ccc, LLL dd yyyy HH:mm:ss (ZZZZ)")]}),(0,y.jsxs)("span",{className:"versionData",children:[(0,y.jsx)("strong",{children:"Size:"})," ",(0,c.nO)("".concat(n.size||"0"))]})]})]})})},p)})},pe=e=>{let{closeDeleteModalAndRefresh:t,deleteOpen:n,selectedBucket:a,selectedObject:d}=e;const u=(0,l.jL)(),[h,p]=(0,s.useState)(!1),[j,b]=(0,s.useState)(""),[g,f]=(0,s.useState)(!1),v=(0,o.d4)((e=>e.objectBrowser.retentionConfig)),S=(0,_._)([a],[r.OV.S3_BYPASS_GOVERNANCE_RETENTION])&&"governance"===(null===v||void 0===v?void 0:v.mode);if((0,s.useEffect)((()=>{h&&i.F.buckets.deleteObject(a,{prefix:d,non_current_versions:!0,bypass:g}).then((()=>{t(!0)})).catch((e=>{u((0,O.C9)((0,m.S)(e.error))),p(!1)}))}),[h,t,u,d,a,g]),!d)return null;return(0,y.jsx)(ee.A,{title:"Delete Non-Current versions",confirmText:"Delete",isOpen:n,titleIcon:(0,y.jsx)(x.xWY,{}),isLoading:h,onConfirm:()=>{p(!0)},onClose:()=>t(!1),confirmButtonProps:{disabled:"YES, PROCEED"!==j||h},confirmationContent:(0,y.jsxs)(s.Fragment,{children:["Are you sure you want to delete all the non-current versions for:"," ",(0,y.jsx)("b",{children:(0,c.x6)(d)}),"? ",(0,y.jsx)("br",{}),S&&(0,y.jsx)(s.Fragment,{children:(0,y.jsx)("div",{style:{marginTop:10},children:(0,y.jsx)(x.dOG,{label:"Bypass Governance Mode",indicatorLabels:["Yes","No"],checked:g,value:"bypass_governance",id:"bypass_governance",name:"bypass_governance",onChange:e=>{f(!g)},description:""})})}),(0,y.jsx)("br",{}),"To continue please type ",(0,y.jsx)("b",{children:"YES, PROCEED"})," in the box.",(0,y.jsx)("br",{}),(0,y.jsx)("br",{}),(0,y.jsx)(x.xA9,{item:!0,xs:12,children:(0,y.jsx)(x.cl_,{id:"type-confirm",name:"retype-tenant",onChange:e=>{b(e.target.value)},label:"",value:j})})]})})},je=e=>{let{closeDeleteModalAndRefresh:t,deleteOpen:n,selectedBucket:a,selectedVersions:c,selectedObject:d}=e;const u=(0,l.jL)(),[h,p]=(0,s.useState)(!1),[j,b]=(0,s.useState)(!1),g=(0,o.d4)((e=>e.objectBrowser.retentionConfig)),f=(0,_._)([a],[r.OV.S3_BYPASS_GOVERNANCE_RETENTION])&&"governance"===(null===g||void 0===g?void 0:g.mode);return(0,s.useEffect)((()=>{if(h){const e=c.map((e=>({path:d,versionID:e,recursive:!1})));e.length>0&&i.F.buckets.deleteMultipleObjects(a,e,{all_versions:!1,bypass:j}).then((()=>{p(!1),t(!0)})).catch((e=>{u((0,O.C9)((0,m.S)(e.error))),p(!1)}))}}),[h,t,a,d,c,j,u]),c?(0,y.jsx)(ee.A,{title:"Delete Selected Versions",confirmText:"Delete",isOpen:n,titleIcon:(0,y.jsx)(x.xWY,{}),isLoading:h,onConfirm:()=>{p(!0)},onClose:()=>t(!1),confirmationContent:(0,y.jsxs)(s.Fragment,{children:["Are you sure you want to delete the selected ",c.length," ","versions for ",(0,y.jsx)("strong",{children:d}),"?",f&&(0,y.jsx)(s.Fragment,{children:(0,y.jsx)("div",{style:{marginTop:10},children:(0,y.jsx)(x.dOG,{label:"Bypass Governance Mode",indicatorLabels:["Yes","No"],checked:j,value:"bypass_governance",id:"bypass_governance",name:"bypass_governance",onChange:e=>{b(!j)},description:""})})})]})}):null};var be=n(95098);const ge={is_latest:!0,last_modified:"",legal_hold_status:"",name:"",retention_mode:"",retention_until_date:"",size:0,tags:{},version_id:void 0},fe=e=>{let{internalPaths:t,bucketName:n}=e;const a=(0,l.jL)(),r=(0,o.d4)((e=>e.objectBrowser.searchVersions)),u=(0,o.d4)((e=>e.objectBrowser.loadingVersions)),p=(0,o.d4)((e=>e.objectBrowser.selectedVersion)),j=(0,o.d4)(O.Rq),[b,g]=(0,s.useState)(!1),[f,v]=(0,s.useState)(null),[_,S]=(0,s.useState)(null),[w,T]=(0,s.useState)([]),[C,E]=(0,s.useState)(!1),[A,I]=(0,s.useState)(null),[k,B]=(0,s.useState)("date"),[F,V]=(0,s.useState)(!1),[D,R]=(0,s.useState)(!1),[U,z]=(0,s.useState)(!1),[M,K]=(0,s.useState)([]),[W,H]=(0,s.useState)(!1);let Y=[];f&&f.name&&(Y=f.name.split("/")),(0,s.useEffect)((()=>{u||f||a((0,d.SK)(!0))}),[u,f,a]),(0,s.useEffect)((()=>{u&&""!==t&&i.F.buckets.listObjects(n,{prefix:t,with_versions:j}).then((e=>{const n=h()(e.data,"objects",[]),s=(0,c.x6)(t),o=n.filter((e=>e.name===s));j?(v(o.find((e=>e.is_latest))||ge),T(o)):(v(o[0]),T([])),a((0,d.SK)(!1))})).catch((e=>{a((0,O.C9)((0,m.S)(e.error))),a((0,d.SK)(!1))}))}),[u,n,t,a,j]);const $=e=>{S(e),g(!0)},Z=e=>{S(e),V(!0)},q=e=>{I(e),E(!0)},Q=e=>{(0,P._)(a,n,t,e)},X=e=>{a((0,d.Ai)(e.version_id||""))},ee=w.filter((e=>!!e.version_id&&e.version_id.includes(r))),te=w.reduce(((e,t)=>t.size?e+t.size:e),0);ee.sort(((e,t)=>{if("size"===k)return e.size&&t.size?e.sizet.size?1:0:0;{const n=new Date(e.last_modified||"").getTime(),s=new Date(t.last_modified||"").getTime();return ns?-1:0}}));const ne=e=>{if(M.includes(e)){const t=M.filter((t=>t!==e));return void K(t)}const t=[...M];t.push(e),K(t)};return(0,y.jsxs)(s.Fragment,{children:[b&&f&&(0,y.jsx)(J.default,{open:b,closeModalAndRefresh:()=>{S(null),g(!1),V(!1)},bucketName:n,dataObject:_||f}),C&&f&&A&&(0,y.jsx)(ue,{restoreOpen:C,bucketName:n,versionToRestore:A,objectPath:f.name||"",onCloseAndUpdate:e=>{E(!1),I(null),e&&(a((0,d.SK)(!0)),a((0,d.oe)(!0)))}}),F&&f&&(0,y.jsx)(G.default,{open:F,bucketName:n,actualInfo:{name:f.name||"",version_id:_&&_.version_id?_.version_id:"null",size:_&&_.size?_.size:0,content_type:"",last_modified:f.last_modified||""},onClosePreview:()=>{V(!1)}}),D&&(0,y.jsx)(pe,{deleteOpen:D,closeDeleteModalAndRefresh:e=>{R(!1),e&&(a((0,d.SK)(!0)),a((0,d.Ai)("")),a((0,d.oe)(!0)))},selectedBucket:n,selectedObject:t}),W&&(0,y.jsx)(je,{selectedBucket:n,selectedObject:(0,c.x6)(t),deleteOpen:W,selectedVersions:M,closeDeleteModalAndRefresh:e=>{H(!1),e&&(a((0,d.SK)(!0)),a((0,d.Ai)("")),a((0,d.oe)(!0)),K([]))}}),(0,y.jsxs)(x.xA9,{container:!0,sx:{width:"100%",padding:10,"@media (max-width: 799px)":{minHeight:800}},children:[!f&&(0,y.jsx)(x.xA9,{item:!0,xs:12,children:(0,y.jsx)(x.z21,{})}),f&&(0,y.jsxs)(s.Fragment,{children:[(0,y.jsx)(x.xA9,{item:!0,xs:12,children:(0,y.jsx)(N,{bucketName:n,internalPaths:(0,c.x6)(t),hidePathButton:!0})}),(0,y.jsx)(x.xA9,{item:!0,xs:12,sx:{position:"relative","& .detailsSpacer":{marginRight:18,"@media (max-width: 600px)":{marginRight:0}},["@media (max-width: ".concat(x.nmC.md,"px)")]:{"&::before":{display:"none"}}},children:(0,y.jsx)(x.lcx,{icon:(0,y.jsx)("span",{style:{display:"block",marginTop:"-10px"},children:(0,y.jsx)(x.j1U,{style:{width:20,height:20}})}),title:"".concat(Y.length>0?Y[Y.length-1]:f.name," Versions"),subTitle:(0,y.jsxs)(s.Fragment,{children:[(0,y.jsx)("span",{className:"detailsSpacer",children:(0,y.jsxs)("strong",{children:[w.length," Version",1===w.length?"":"s","\xa0\xa0\xa0"]})}),(0,y.jsx)("span",{className:"detailsSpacer",children:(0,y.jsx)("strong",{children:(0,c.qO)(te)})})]}),actions:(0,y.jsxs)(s.Fragment,{children:[(0,y.jsx)(L.A,{tooltip:"Select Multiple Versions",children:(0,y.jsx)(x.$nd,{id:"select-multiple-versions",onClick:()=>{z(!U)},icon:(0,y.jsx)(x.IN,{}),variant:U?"callAction":"regular",style:{marginRight:8}})}),U&&(0,y.jsx)(L.A,{tooltip:"Delete Selected Versions",children:(0,y.jsx)(x.$nd,{id:"delete-multiple-versions",onClick:()=>{H(!0)},icon:(0,y.jsx)(x.d7y,{}),variant:"secondary",style:{marginRight:8},disabled:0===M.length})}),(0,y.jsx)(L.A,{tooltip:"Delete Non Current Versions",children:(0,y.jsx)(x.$nd,{id:"delete-non-current",onClick:()=>{R(!0)},icon:(0,y.jsx)(x.rgY,{}),variant:"secondary",style:{marginRight:15},disabled:w.length<=1})}),(0,y.jsx)(x.l6P,{id:"sort-by",options:[{label:"Date",value:"date"},{label:"Size",value:"size"}],value:k,label:"Sort by",onChange:e=>{B(e)},noLabelMinWidth:!0})]}),bottomBorder:!1})}),(0,y.jsx)(x.xA9,{item:!0,xs:12,sx:{flexGrow:1,height:"calc(100% - 120px)",overflow:"auto",["@media (max-width: ".concat(x.nmC.md,"px)")]:{height:600}},children:f.version_id&&"null"!==f.version_id&&(0,y.jsx)(be.B8,{style:{width:"100%"},containerStyle:{width:"100%",maxWidth:"100%"},width:1,height:800,rowCount:ee.length,rowHeight:108,rowRenderer:e=>{let{key:t,index:n,isScrolling:s,isVisible:o,style:a}=e;const i=w.length-n;return(0,y.jsx)(me,{style:a,fileName:(null===f||void 0===f?void 0:f.name)||"",versionInfo:ee[n],index:i,onDownload:Q,onRestore:q,onShare:$,onPreview:Z,globalClick:X,isSelected:p===ee[n].version_id,checkable:U,onCheck:ne,isChecked:M.includes(ee[n].version_id||"")},t)}})})]})]})]})},ve=e=>{if(e.name.endsWith("/"))return"";const t=j.c9.now(),n=j.c9.fromISO(e.last_modified);return t.hasSame(n,"day")&&t.hasSame(n,"month")&&t.hasSame(n,"year")?"Today, ".concat(n.toFormat("HH:mm")):n.toFormat("ccc, LLL dd yyyy HH:mm (ZZZZ)")},_e=e=>e.name.endsWith("/")||!e.size?"-":(0,c.nO)(String(e.size)),Se=[{label:"Name",elementKey:"name",renderFunction:z,enableSort:!0},{label:"Last Modified",elementKey:"last_modified",renderFunction:ve,renderFullObject:!0,enableSort:!0},{label:"Size",elementKey:"size",renderFunction:_e,renderFullObject:!0,width:100,enableSort:!0}],Oe=[{label:"Name",elementKey:"name",renderFunction:z,enableSort:!0},{label:"Object Date",elementKey:"last_modified",renderFunction:ve,renderFullObject:!0,enableSort:!0},{label:"Size",elementKey:"size",renderFunction:_e,renderFullObject:!0,width:100,enableSort:!0},{label:"Deleted",elementKey:"delete_flag",renderFunction:e=>e?"Yes":"No",width:60}];var we=n(46537);const Te=()=>{const e=(0,l.jL)(),t=(0,a.g)(),n=(0,a.Zp)(),[i,u]=(0,s.useState)("ASC"),[m,p]=(0,s.useState)("name"),j=t.bucketName||"",b=(0,o.d4)((e=>e.objectBrowser.objectDetailsOpen)),g=(0,o.d4)((e=>e.objectBrowser.requestInProgress)),f=(0,o.d4)(we.s$),v=!(null===f||void 0===f||!f.includes("object-browser-only")),S=(0,o.d4)((e=>e.objectBrowser.rewind.rewindEnabled)),O=(0,o.d4)((e=>e.objectBrowser.records)),w=(0,o.d4)((e=>e.objectBrowser.searchObjects)),T=(0,o.d4)((e=>e.objectBrowser.selectedObjects)),C=(0,o.d4)((e=>e.objectBrowser.connectionError)),E=(0,o.d4)((e=>e.system.anonymousMode)),N=(0,_._)(j,[r.OV.S3_LIST_BUCKET,r.OV.S3_ALL_LIST_BUCKET]),I=O.filter((e=>{if(""===w)return!0;return e.name.toLowerCase().indexOf(w.toLowerCase())>=0})).sort((0,A.$w)(m));let k=[];k="ASC"===i?I:I.reverse();const B=[{type:"view",tooltip:"View",onClick:t=>{var s;const o=t.name||"",a="/browser/".concat(j).concat(o?"/".concat((0,c.nf)(o)):"");!E||null!==(s=t.name)&&void 0!==s&&s.endsWith("/")?(e((0,d.KX)([])),n(a),E||(e((0,d.TO)(!0)),e((0,d.SK)(!0))),e((0,d.A7)("".concat(o?"".concat((0,c.nf)(o)):"")))):(0,P._)(e,j,"".concat((0,c.nf)(o)),t)},sendOnlyId:!1}];let F=N||E?"This location is empty".concat(S?"":", please try uploading a new file"):(0,r.vj)([r.OV.S3_LIST_BUCKET,r.OV.S3_ALL_LIST_BUCKET],"view Objects in this bucket");C&&(F="Objects List unavailable. Please review your WebSockets configuration and try again");let L="calc(100vh - 290px)";return v&&(L="calc(100vh - 315px)"),(0,y.jsx)(x.bQt,{itemActions:B,columns:S?Oe:Se,isLoading:g,entityName:"Objects",idField:"name",records:k,customPaperHeight:L,selectedItems:T,onSelect:E?void 0:t=>{const n=t.target,s=n.value,o=n.checked;let a=[...T];return o?a.push(s):a=a.filter((e=>e!==s)),e((0,d.KX)(a)),e((0,d.A7)(null)),a},customEmptyMessage:F,sortEnabled:{currentSort:m,currentDirection:i,onSortClick:t=>{const n=h()(t,"sortDirection","DESC");p(t.sortBy),u(n),e((0,d.Yw)(!0))}},onSelectAll:()=>{if(e((0,d.A7)(null)),T.length===k.length)return void e((0,d.KX)([]));const t=k.map((e=>e.name));e((0,d.KX)(t))},rowStyle:e=>{var t;let{index:n}=e;return null!==(t=k[n])&&void 0!==t&&t.delete_flag?"deleted":""},sx:{minHeight:b?"100%":"initial"},noBackground:!0})};var ye=n(64681);const Ce=()=>{const e=(0,l.jL)(),t=(0,o.d4)((e=>e.objectBrowser.searchObjects));return(0,y.jsx)(ye.A,{placeholder:"Start typing to filter objects in the bucket",onChange:t=>{e((0,d.$X)(t))},value:t})};var Ee=n(30614);const Ne=(0,S.A)(s.lazy((()=>n.e(5941).then(n.bind(n,65941))))),Ae=(0,S.A)(s.lazy((()=>Promise.resolve().then(n.bind(n,30718))))),Ie=(0,S.A)(s.lazy((()=>n.e(2704).then(n.bind(n,32704))))),ke=(0,S.A)(s.lazy((()=>Promise.resolve().then(n.bind(n,37524))))),Be={borderWidth:2,borderRadius:2,borderColor:"transparent",outline:"none"},Fe={borderStyle:"dashed",backgroundColor:"transparent",borderColor:"#2196f3"},Le={borderStyle:"dashed",backgroundColor:"transparent",borderColor:"#00e676"},Ve=()=>{var e;const t=(0,l.jL)(),n=(0,a.g)(),u=(0,a.Zp)(),b=(0,a.zy)(),g=(0,o.d4)((e=>e.objectBrowser.rewind.rewindEnabled)),f=(0,o.d4)((e=>e.objectBrowser.rewind.bucketToRewind)),v=(0,o.d4)((e=>e.objectBrowser.versionsMode)),S=(0,o.d4)((e=>e.objectBrowser.showDeleted)),C=(0,o.d4)((e=>e.objectBrowser.objectDetailsOpen)),E=(0,o.d4)((e=>e.objectBrowser.selectedInternalPaths)),P=(0,o.d4)((e=>e.objectBrowser.requestInProgress)),R=(0,o.d4)((e=>e.objectBrowser.simplePath)),U=(0,o.d4)((e=>e.objectBrowser.versionInfo)),z=(0,o.d4)((e=>e.objectBrowser.lockingEnabled)),G=(0,o.d4)((e=>e.objectBrowser.downloadRenameModal)),M=(0,o.d4)((e=>e.objectBrowser.selectedPreview)),J=(0,o.d4)((e=>e.objectBrowser.shareFileModalOpen)),K=(0,o.d4)((e=>e.objectBrowser.previewOpen)),W=(0,o.d4)((e=>e.objectBrowser.selectedBucket)),H=(0,o.d4)((e=>e.system.anonymousMode)),Y=(0,o.d4)((e=>e.objectBrowser.anonymousAccessOpen)),$=(0,o.d4)((e=>{var t;return(null===(t=e.objectBrowser)||void 0===t?void 0:t.records)||[]})),Z=(0,o.d4)(B.Nx),q=(0,o.d4)(B.fT),[Q,X]=(0,s.useState)(!1),[ee,te]=(0,s.useState)(!1),[ne,se]=(0,s.useState)(!1),[oe,ae]=(0,s.useState)(!1),[ie,le]=(0,s.useState)(!1),[ce,ue]=(0,s.useState)(null),[he,xe]=(0,s.useState)(null),[me,pe]=(0,s.useState)(!1),je=I(U.status),be=n.bucketName||"",ge=b.pathname.split("/browser/".concat(be,"/")),ve=2===ge.length?ge[1]:"",_e=(0,c.x6)(ve),Se=_e.split("/").filter((e=>""!==e));let Oe=[be];Se.length>0&&(Oe=Oe.concat(Se));const we=(0,s.useRef)(null),ye=(0,s.useRef)(null),Ve=(0,o.d4)((e=>e.console.session&&e.console.session.permissions||{})),De=[r.OV.S3_PUT_OBJECT,r.OV.S3_PUT_ACTIONS],Pe=Oe.join("/"),Re=function(e,t){const n=T(e,t,arguments.length>2&&void 0!==arguments[2]?arguments[2]:[]).reduce(((e,t)=>{const n=w(t);return n&&e.push(".".concat(n)),e}),[]);return[...new Set(n)].join(",")}(Ve,Pe,De),Ue=T(Ve,Pe,De),ze=(0,_._)([Pe,...Ue],[r.OV.S3_GET_OBJECT,r.OV.S3_GET_ACTIONS]),Ge=(0,_._)(be,[r.OV.S3_GET_OBJECT,r.OV.S3_GET_ACTIONS,r.OV.S3_GET_BUCKET_VERSIONING]),Me=(0,_._)([Pe,...Ue],[r.OV.S3_DELETE_OBJECT]),Je=(0,_._)([Pe,...Ue],De)||H,Ke=(0,_._)(be,[r.OV.S3_GET_BUCKET_POLICY,r.OV.S3_PUT_BUCKET_POLICY,r.OV.S3_GET_ACTIONS,r.OV.S3_PUT_ACTIONS]),We=(0,o.d4)((e=>e.objectBrowser.selectedObjects)),He=(()=>{let e=!1;if(1===We.length){e=!!$.find((e=>e.name==="".concat(We[0])&&e.delete_flag))}return e})(),Ye=(0,s.useCallback)((()=>{const e=We[0],t=(0,c.nf)(e);!me&&t&&i.F.buckets.getObjectMetadata(be,{prefix:t}).then((e=>{let t=h()(e.data,"objectMetadata",{});pe(!0),xe(t)})).catch((e=>{console.error("Error Getting Metadata Status: ",e,null===e||void 0===e?void 0:e.detailedError),pe(!0)}))}),[be,We,me]);(0,s.useEffect)((()=>{be&&!He&&Ye()}),[be,We,Ye,He]),(0,s.useEffect)((()=>{g&&f!==be&&t((0,d.rS)())}),[g,f,be,t]),(0,s.useEffect)((()=>{null!==ye.current&&(ye.current.setAttribute("directory",""),ye.current.setAttribute("webkitdirectory",""))}),[ye]),(0,s.useEffect)((()=>{if(1===We.length){const e=We[0],t=e.endsWith("/");let n=(0,A.IZ)(he,e);le(!("none"===n||!ze)),ae(!(!ze||t))}else ae(!1),le(!1)}),[We,ze,he]),(0,s.useEffect)((()=>{ce||H||i.F.buckets.getBucketQuota(be).then((e=>{let t=null;e.data.quota&&(t=e.data),ue(t)})).catch((e=>{console.error("Error Getting Quota Status: ",e.error.detailedMessage),ue(null)}))}),[ce,be,H]),(0,s.useEffect)((()=>{We.length>0?t((0,d.TO)(!0)):0!==We.length||null!==E||P||t((0,d.TO)(!1))}),[We,E,t,P]),(0,s.useEffect)((()=>{ne||(t((0,B.ZU)(!0)),se(!0))}),[ne,t,se]),(0,s.useEffect)((()=>{!P&&!Z||H||i.F.buckets.bucketInfo(be).then((e=>{t((0,B.ZU)(!1)),t((0,B.$T)(e.data))})).catch((e=>{t((0,B.ZU)(!1)),t((0,O.C9)((0,m.S)(e)))}))}),[be,Z,t,H,P]),(0,s.useEffect)((()=>{""!==W&&i.F.buckets.getBucketRetentionConfig(W).then((e=>{t((0,d.PJ)(e.data))})).catch((()=>{t((0,d.PJ)(null))}))}),[W,t]);const $e=e=>{if(null!==e&&void 0!==e&&null!==e.target.files&&void 0!==e.target.files){e.preventDefault();var t=[];for(let n=0;n{let s="";R&&(s=R.endsWith("/")?R:R+"/");((e,n,s,o)=>{let a=a=>new Promise(((i,l)=>{let r="api/v1/buckets/".concat(n,"/objects/upload");const u=a.name,x=new Blob([a],{type:a.type});let m="";const p=h()(a,"path",""),j=h()(a,"webkitRelativePath","");let b=o;const g=(0,k.E0)(8);""!==p?b=p:""!==j&&(b=j);let f="";if(""!==s||""!==b){const e=b.split("/").slice(0,-1).join("/"),t=s.endsWith("/")?s.slice(0,-1):s;f="".concat(t).concat(t.endsWith("/")||""===e||e.startsWith("/")?"":"/").concat(e).concat(!e.endsWith("/")||""===e.trim()&&!s.endsWith("/")?"/":"")}r=""!==f?"".concat(r,"?prefix=").concat((0,c.nf)(f+u)):"".concat(r,"?prefix=").concat((0,c.nf)(u)),m=(0,c.nf)(f);const v=(0,c.nf)("".concat(n,"-").concat(m,"-").concat((new Date).getTime(),"-").concat(Math.random()));let _=new XMLHttpRequest;_.open("POST",r,!0),H&&_.setRequestHeader("X-Anonymous","1");const S=e.length>1;let O="An error occurred while uploading the file".concat(S?"s":"",".");const w={413:"Error - File size too large"};_.withCredentials=!1,_.onload=function(){if(_.status>=200&&_.status<300)t((0,d.rx)(v)),i({status:_.status}),(0,k.vy)(g);else{if(w[_.status])O=w[_.status];else if(_.response)try{const e=JSON.parse(_.response);O=e.detailedMessage}catch(e){O="something went wrong"}t((0,d.iL)({instanceID:v,msg:O})),l({status:_.status,message:O}),(0,k.vy)(g)}},_.upload.addEventListener("error",(()=>{l(O),t((0,d.iL)({instanceID:v,msg:"A network error occurred."}))})),_.upload.addEventListener("progress",(e=>{const n=Math.floor(100*e.loaded/e.total);t((0,d.DW)({instanceID:v,progress:n}))})),_.onerror=()=>{l(O),t((0,d.iL)({instanceID:v,msg:"A network error occurred."}))},_.onloadend=()=>{0===e.length&&t((0,d.Yw)(!0))},_.onabort=()=>{t((0,d.Dm)(v))};const T=new FormData;void 0!==a.size&&(T.append(a.size.toString(),x,u),(0,k.FP)(g,_),t((0,d.cP)({ID:g,bucketName:n,done:!1,instanceID:v,percentage:0,prefix:"".concat((0,c.x6)(m)).concat(u),type:"upload",waitingForFile:!1,failed:!1,cancelled:!1,errorMessage:""})),(0,k.vx)(g,T))}));const i=[];t((0,d.Nu)());for(let t=0;t{const n=e.filter((e=>"rejected"===e.status));if(n.length>0){const e=i.length,s=i.length-n.length,o={errorMessage:"There were some errors during file upload",detailedError:"Uploaded files ".concat(s,"/").concat(e)};t((0,O.C9)(o))}t((0,d.Yw)(!0))}))})(e,be,s,n)}),[be,t,R,H]),qe=(0,s.useCallback)((e=>{if(e&&e.length>0&&Je){let n=e[0].path,s=e;Re.length>0&&(s=e.filter((e=>{const t=w(e.name);return Re.includes(t)}))),s.length?(Ze(s,n),console.log("".concat(s.length," Allowed Files Processed out of ").concat(e.length,"."),Pe,...Ue),s.length!==e.length&&t((0,O.C9)({errorMessage:"Upload is restricted.",detailedError:(0,r.vj)([r.OV.S3_PUT_OBJECT,r.OV.S3_PUT_ACTIONS],"upload objects to this location")}))):(t((0,O.C9)({errorMessage:"Could not process drag and drop.",detailedError:(0,r.vj)([r.OV.S3_PUT_OBJECT,r.OV.S3_PUT_ACTIONS],"upload objects to this location")})),console.error("Could not process drag and drop . upload may be restricted.",Pe,...Ue))}Je||t((0,O.C9)({errorMessage:"Upload not allowed",detailedError:(0,r.vj)([r.OV.S3_PUT_OBJECT,r.OV.S3_PUT_ACTIONS],"upload objects to this location")}))}),[Ze]),{getRootProps:Qe,getInputProps:Xe,isDragActive:et,isDragAccept:tt}=(0,p.VB)({noClick:!0,onDrop:qe}),nt=(0,s.useMemo)((()=>({...Be,...et?Fe:{},...tt?Le:{}})),[et,tt]),st=e=>{if(t((0,d.A7)(null)),t((0,d.cQ)({status:!1})),C&&null!==E){const e=(0,c.x6)(ve).split("/");e.pop();let t="";e&&e.length>0&&(t="".concat(e.join("/"),"/")),u("/browser/".concat(be,"/").concat((0,c.nf)(t)))}t((0,d.TO)(!1)),e&&t((0,d.Yw)(!0))};let ot=j.c9.now();null!==q&&void 0!==q&&q.creation_date&&(ot=j.c9.fromISO(q.creation_date));const at=(null===We||void 0===We?void 0:We.length)<=1?"Download Selected":" Download selected objects as Zip. Any Deleted objects in the selection would be skipped from download.",it=[{action:()=>{t((0,F.op)(be))},label:"Download",disabled:!ze||He,icon:(0,y.jsx)(x.s3U,{}),tooltip:ze?at:(0,r.vj)([r.OV.S3_GET_OBJECT,r.OV.S3_GET_ACTIONS],"download objects from this bucket")},{action:()=>{t((0,F.mS)())},label:"Share",disabled:1!==We.length||!oe||He,icon:(0,y.jsx)(x.liv,{}),tooltip:oe?"Share Selected File":"Sharing unavailable"},{action:()=>{t((0,F.HS)())},label:"Preview",disabled:1!==We.length||!ie||He,icon:(0,y.jsx)(x.cyn,{}),tooltip:ie?"Preview Selected File":"Preview unavailable"},{action:()=>{t((0,F.oz)())},label:"Anonymous Access",disabled:1!==We.length||!We[0].endsWith("/")||!Ke,icon:(0,y.jsx)(x._kf,{}),tooltip:1===We.length&&We[0].endsWith("/")?"Set Anonymous Access to this Folder":"Anonymous Access unavailable"},{action:()=>{X(!0)},label:"Delete",icon:(0,y.jsx)(x.d7y,{}),disabled:!Me||0===We.length,tooltip:Me?"Delete Selected Files":(0,r.vj)([r.OV.S3_DELETE_OBJECT],"delete objects in this bucket")}];return(0,y.jsxs)(s.Fragment,{children:[J&&M&&(0,y.jsx)(Ae,{open:J,closeModalAndRefresh:()=>{t((0,d.Lf)(!1)),t((0,d.go)(null))},bucketName:be,dataObject:{name:M.name,last_modified:"",version_id:M.version_id}}),Q&&(0,y.jsx)(Ne,{deleteOpen:Q,selectedBucket:be,selectedObjects:We,closeDeleteModalAndRefresh:e=>{X(!1),e&&(t((0,O.Hk)("Objects deleted successfully.")),t((0,d.KX)([])),t((0,d.Yw)(!0)))},versioning:U}),ee&&(0,y.jsx)(Ie,{open:ee,closeModalAndRefresh:()=>{te(!1)},bucketName:be}),K&&M&&(0,y.jsx)(ke,{open:K,bucketName:be,actualInfo:{name:M.name||"",last_modified:"",version_id:M.version_id||"",size:M.size||0},onClosePreview:()=>{t((0,d.xE)(!1)),t((0,d.go)(null))}}),!!G&&(0,y.jsx)(re,{open:!!G,closeModal:()=>{t((0,d.Ew)(null))},currentItem:(null===(e=G.name.split("/"))||void 0===e?void 0:e.pop())||"",bucketName:be,internalPaths:ve,actualInfo:{name:G.name,last_modified:"",version_id:G.version_id,size:G.size}}),Y&&(0,y.jsx)(Ee.default,{onClose:()=>{t((0,d.I8)(!1))},bucket:be,modalOpen:Y,prefilledRoute:"".concat(We[0],"*")}),(0,y.jsxs)(x.Mxu,{variant:"full",children:[H&&(0,y.jsx)("div",{style:{paddingBottom:16},children:(0,y.jsx)(Ce,{})}),(0,y.jsx)(x.azJ,{withBorders:!0,sx:{padding:"0 5px"},children:(0,y.jsx)(x.lcx,{icon:(0,y.jsx)("span",{children:(0,y.jsx)(x.brV,{style:{width:30}})}),title:be,subTitle:H?null:(0,y.jsxs)(x.azJ,{sx:{"& .detailsSpacer":{marginRight:18,"@media (max-width: 600px)":{marginRight:0}}},children:[(0,y.jsxs)("span",{className:"detailsSpacer",children:["Created on:\xa0",(0,y.jsx)("strong",{children:null!==q&&void 0!==q&&q.creation_date?ot.toFormat("ccc, LLL dd yyyy HH:mm:ss (ZZZZ)"):""})]}),(0,y.jsxs)("span",{className:"detailsSpacer",children:["Access:\xa0\xa0",(0,y.jsx)("strong",{children:(null===q||void 0===q?void 0:q.access)||""})]}),q&&(0,y.jsx)(s.Fragment,{children:(0,y.jsxs)("span",{className:"detailsSpacer",children:[q.size&&(0,y.jsx)(s.Fragment,{children:(0,c.qO)(q.size)}),q.size&&ce&&(0,y.jsxs)(s.Fragment,{children:[" ","/ ",(0,c.qO)(ce.quota||0)]}),q.size&&q.objects?" - ":"",q.objects&&(0,y.jsxs)(s.Fragment,{children:[q.objects,"\xa0Object",q.objects&&1!==q.objects?"s":""]})]})})]}),actions:(0,y.jsxs)(s.Fragment,{children:[!H&&(0,y.jsx)(L.A,{tooltip:Ge?"Rewind Bucket":(0,r.vj)([r.OV.S3_GET_OBJECT,r.OV.S3_GET_ACTIONS,r.OV.S3_GET_BUCKET_VERSIONING],"apply rewind in this bucket"),children:(0,y.jsx)(x.$nd,{id:"rewind-objects-list",label:"Rewind",icon:(0,y.jsx)(x.Exy,{color:"alert",dotOnly:!0,invisible:!g,children:(0,y.jsx)(x.osr,{style:{minWidth:16,minHeight:16,width:16,height:16,marginTop:-3}})}),variant:"regular",onClick:()=>{te(!0)},disabled:!je||!Ge})}),(0,y.jsx)(L.A,{tooltip:"Reload List",children:(0,y.jsx)(x.$nd,{id:"refresh-objects-list",label:"Refresh",icon:(0,y.jsx)(x.fNY,{}),variant:"regular",onClick:()=>{v?t((0,d.SK)(!0)):(t((0,d.A3)()),t((0,d.Yw)(!0)))},disabled:!H&&(!(0,_._)(be,[r.OV.S3_LIST_BUCKET,r.OV.S3_ALL_LIST_BUCKET])||g)})}),(0,y.jsx)("input",{type:"file",multiple:!0,accept:Re||void 0,onChange:$e,style:{display:"none"},ref:we}),(0,y.jsx)("input",{type:"file",multiple:!0,onChange:$e,style:{display:"none"},ref:ye}),(0,y.jsx)(V,{bucketName:be,uploadPath:Pe,uploadFileFunction:e=>{we&&we.current&&we.current.click(),e()},uploadFolderFunction:e=>{ye&&ye.current&&ye.current.click(),e()}})]}),bottomBorder:!1})}),(0,y.jsxs)("div",{id:"object-list-wrapper",...Qe({style:{...nt}}),children:[(0,y.jsx)("input",{...Xe()}),(0,y.jsxs)(x.azJ,{withBorders:!0,sx:{display:"flex",borderTop:0,padding:0,"& .hideListOnSmall":{"@media (max-width: 799px)":{display:"none"}}},children:[v?(0,y.jsx)(s.Fragment,{children:null!==E&&(0,y.jsx)(fe,{internalPaths:E,bucketName:be})}):(0,y.jsx)(_.R,{scopes:[r.OV.S3_LIST_BUCKET,r.OV.S3_ALL_LIST_BUCKET],resource:be,errorProps:{disabled:!0},children:(0,y.jsxs)(x.xA9,{item:!0,xs:12,sx:{width:"100%",position:"relative","&.detailsOpen":{"@media (max-width: 799px)":{display:"none"}}},className:C?"detailsOpen":"",children:[!H&&(0,y.jsx)(x.xA9,{item:!0,xs:12,sx:{padding:"12px 14px 5px"},children:(0,y.jsx)(N,{bucketName:be,internalPaths:_e,additionalOptions:!je||g?null:(0,y.jsx)(x.Sc0,{name:"deleted_objects",id:"showDeletedObjects",value:"deleted_on",label:"Show deleted objects",onChange:()=>{t((0,d.A3)()),t((0,d.lA)(!S)),st(!0)},checked:S,sx:{marginLeft:5,"@media (max-width: 600px)":{marginLeft:0,flexDirection:"row"}}}),hidePathButton:!1})}),(0,y.jsx)(Te,{})]})}),!H&&(0,y.jsx)(_.R,{scopes:[r.OV.S3_LIST_BUCKET,r.OV.S3_ALL_LIST_BUCKET],resource:be,errorProps:{disabled:!0},children:(0,y.jsxs)(D,{open:C,closePanel:()=>{st(!1)},className:"".concat(v?"hideListOnSmall":""),children:[We.length>0&&(0,y.jsx)(x.Smc,{items:it,title:"Selected Objects:"}),null!==E&&(0,y.jsx)(de,{internalPaths:E,bucketName:be,onClosePanel:st,versioningInfo:U,locking:z})]})})]})]})]})]})};var De=n(18218),Pe=n(69772),Re=n(48793),Ue=n(59707),ze=n(92452);const Ge=e=>{let{bucketName:t}=e;const n=(0,l.jL)(),i=(0,o.d4)(we.s$),c=(0,o.d4)((e=>e.objectBrowser.versionsMode)),u=(0,o.d4)((e=>e.objectBrowser.versionedFile)),h=(0,o.d4)((e=>e.objectBrowser.searchVersions)),m=!(null===i||void 0===i||!i.includes("object-browser-only")),p=(0,a.Zp)(),j=(0,De.A)(t,[r.OV.S3_GET_BUCKET_POLICY,r.OV.S3_PUT_BUCKET_POLICY,r.OV.S3_GET_BUCKET_VERSIONING,r.OV.S3_PUT_BUCKET_VERSIONING,r.OV.S3_GET_BUCKET_ENCRYPTION_CONFIGURATION,r.OV.S3_PUT_BUCKET_ENCRYPTION_CONFIGURATION,r.OV.S3_DELETE_BUCKET,r.OV.S3_GET_BUCKET_NOTIFICATIONS,r.OV.S3_PUT_BUCKET_NOTIFICATIONS,r.OV.S3_GET_REPLICATION_CONFIGURATION,r.OV.S3_PUT_REPLICATION_CONFIGURATION,r.OV.S3_GET_LIFECYCLE_CONFIGURATION,r.OV.S3_PUT_LIFECYCLE_CONFIGURATION,r.OV.ADMIN_GET_BUCKET_QUOTA,r.OV.ADMIN_SET_BUCKET_QUOTA,r.OV.S3_PUT_BUCKET_TAGGING,r.OV.S3_GET_BUCKET_TAGGING,r.OV.S3_LIST_BUCKET_VERSIONS,r.OV.S3_GET_BUCKET_POLICY_STATUS,r.OV.S3_DELETE_BUCKET_POLICY,r.OV.S3_GET_ACTIONS,r.OV.S3_PUT_ACTIONS]),b=(0,y.jsx)(s.Fragment,{children:c?(0,y.jsx)(s.Fragment,{children:(0,y.jsx)(ye.A,{placeholder:"Start typing to filter versions of ".concat(u),onChange:e=>{n((0,d.aj)(e))},value:h})}):(0,y.jsx)(_.R,{scopes:[r.OV.S3_LIST_BUCKET,r.OV.S3_ALL_LIST_BUCKET],resource:t,errorProps:{disabled:!0},children:(0,y.jsx)(Ce,{})})});return(0,s.useEffect)((()=>{n((0,O.ph)("object_browser"))}),[]),(0,y.jsx)(s.Fragment,{children:m?(0,y.jsxs)(x.xA9,{container:!0,sx:{padding:"20px 32px 0"},children:[(0,y.jsx)(x.xA9,{children:(0,y.jsx)(Pe.A,{marginRight:30,marginTop:10})}),(0,y.jsxs)(x.xA9,{item:!0,xs:!0,sx:{display:"flex",gap:10},children:[b,(0,y.jsx)(Ue.A,{})]})]}):(0,y.jsx)(Re.A,{label:(0,y.jsx)(x.EGL,{label:"Object Browser",onClick:()=>{p(r.zZ.OBJECT_BROWSER_VIEW)}}),actions:(0,y.jsxs)(s.Fragment,{children:[(0,y.jsx)(_.R,{scopes:r.pC[r.ac.BUCKET_ADMIN],resource:t,errorProps:{disabled:!0},children:(0,y.jsx)(L.A,{tooltip:j?"Configure Bucket":"You do not have the required permissions to configure this bucket. Please contact your MinIO administrator to request "+r.ac.BUCKET_ADMIN+" permisions.",children:(0,y.jsx)(x.$nd,{id:"configure-bucket-main",color:"primary","aria-label":"Configure Bucket",onClick:()=>p("/buckets/".concat(t,"/admin")),icon:(0,y.jsx)(x.Zes,{style:{width:20,height:20,marginTop:-3}}),style:{padding:"0 10px"}})})}),(0,y.jsx)(ze.A,{})]}),middleComponent:b})})},Me=()=>{const e=(0,l.jL)(),t=(0,a.g)(),n=(0,a.zy)(),u=(0,o.d4)((e=>e.objectBrowser.loadingVersioning)),h=(0,o.d4)((e=>e.objectBrowser.rewind.rewindEnabled)),x=(0,o.d4)((e=>e.objectBrowser.rewind.dateToRewind)),m=(0,o.d4)((e=>e.objectBrowser.showDeleted)),p=(0,o.d4)((e=>e.objectBrowser.requestInProgress)),j=(0,o.d4)((e=>e.objectBrowser.loadingLocking)),b=(0,o.d4)((e=>e.objectBrowser.reloadObjectsList)),g=(0,o.d4)((e=>e.objectBrowser.simplePath)),f=(0,o.d4)((e=>e.system.anonymousMode)),v=(0,o.d4)((e=>e.objectBrowser.selectedBucket)),_=(0,o.d4)((e=>e.objectBrowser.records)),S=t.bucketName||"",O=n.pathname.split("/browser/".concat(S,"/")),w=2===O.length?O[1]:"",T=(0,s.useCallback)((t=>{let n=(new Date).toISOString();null!==x&&h&&(n=x);e({type:"socket/OBRequest",payload:{bucketName:S,path:t,rewindMode:h||m,date:n}})}),[S,m,x,h,e]),C=(0,s.useCallback)((function(){let t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];const n=(0,c.x6)(w);e((0,d.cQ)({status:!1}));let s=n;n.endsWith("/")||""===n||(s="".concat(n.split("/").slice(0,-1).join("/"),"/")),"/"===s&&(s=""),(s!==g||S!==v||t)&&(e((0,d.u)(!0)),T(s))}),[w,e,g,v,S,T]);(0,s.useEffect)((()=>()=>{e({type:"socket/OBCancelLast"})}),[e]),(0,s.useEffect)((()=>{const t=(0,c.x6)(w);e((0,d.vn)(!0)),t.endsWith("/")||""===t?(e((0,d.TO)(!1)),e((0,d.A7)(null)),e((0,d.Qy)(!0))):(e((0,d.oe)(!0)),e((0,d.TO)(!0)),e((0,d.SK)(!0)),e((0,d.A7)("".concat(t?"".concat((0,c.nf)(t)):""))))}),[S,w,x,h,e]),(0,s.useEffect)((()=>{C(!1)}),[C]),(0,s.useEffect)((()=>{b&&0===_.length&&!p&&C(!0)}),[b,_,p,C]);const E=(0,De.A)(S,[r.OV.S3_LIST_BUCKET,r.OV.S3_ALL_LIST_BUCKET])||f;return(0,s.useEffect)((()=>{u&&!f&&(E?i.F.buckets.getBucketVersioning(S).then((t=>{e((0,d.AP)(t.data)),e((0,d.vn)(!1))})).catch((t=>{console.error("Error Getting Object Versioning Status: ",t.error.detailedMessage),e((0,d.vn)(!1))})):(e((0,d.vn)(!1)),e((0,d.A3)())))}),[S,u,e,E,f]),(0,s.useEffect)((()=>{j&&(E?i.F.buckets.getBucketObjectLockingStatus(S).then((t=>{e((0,d.xW)(t.data.object_locking_enabled)),e((0,d.Qy)(!1))})).catch((t=>{console.error("Error Getting Object Locking Status: ",t.error.detailedMessage),e((0,d.Qy)(!1))})):(e((0,d.A3)()),e((0,d.Qy)(!1))))}),[S,j,e,E]),(0,y.jsxs)(s.Fragment,{children:[!f&&(0,y.jsx)(Ge,{bucketName:S}),(0,y.jsx)(Ve,{})]})}},30718:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>f});var s=n(65043),o=n(22166),a=n(89923),i=n(61476),l=n.n(i),r=n(94141),c=n(24241),d=n(70579);const u=e=>{let{id:t,initialDate:n,label:o,maxSeconds:i,entity:l,onChange:r}=e;const u=Math.floor(i/86400),h=Math.floor(i%86400/3600),x=Math.floor(i%3600/60),[m,p]=(0,s.useState)(0),[j,b]=(0,s.useState)(0),[g,f]=(0,s.useState)(0),[v,_]=(0,s.useState)(!0),[S,O]=(0,s.useState)(c.c9.now());(0,s.useEffect)((()=>{p(u),b(h),f(x)}),[u,h,x]),(0,s.useEffect)((()=>{isNaN(j)||isNaN(m)||isNaN(g)||O(((e,t,n,s)=>c.c9.fromJSDate(e).plus({hours:n+24*t,minutes:s}))(n,m,j,g))}),[n,m,j,g]),(0,s.useEffect)((()=>{if(v){const e=S.toFormat("yyyy-MM-dd HH:mm:ss");r(e.split(" ").join("T"),!0)}else r("0000-00-00",!1)}),[S,r,v]),(0,s.useEffect)((()=>{let e=!0;(m<0||m>7||m>u||isNaN(m))&&(e=!1),(j<0||j>23||isNaN(j))&&(e=!1),(g<0||g>59||isNaN(g))&&(e=!1),m===u&&(j>h&&(e=!1),j===h&&g>x&&(e=!1)),m<=0&&j<=0&&g<=0&&(e=!1),_(e)}),[S,u,h,x,r,m,j,g]);const w={"& .textBoxContainer":{minWidth:0},"& input":{textAlign:"center",paddingRight:10,paddingLeft:10,width:40}};return(0,d.jsxs)(a.azJ,{className:"inputItem",children:[(0,d.jsx)(a.azJ,{sx:{display:"flex",alignItems:"center",marginBottom:5},children:(0,d.jsx)(a.l1Y,{htmlFor:t,children:o})}),(0,d.jsxs)(a.azJ,{sx:{display:"flex",alignItems:"flex-start",justifyContent:"space-evenly",gap:10,"& .reverseInput":{flexFlow:"row-reverse","& > label":{fontWeight:400,marginLeft:15,marginRight:25}}},children:[(0,d.jsx)(a.azJ,{children:(0,d.jsx)(a.cl_,{id:t,className:"reverseInput removeArrows",type:"number",min:"0",max:"7",label:"Days",name:t,onChange:e=>{p(parseInt(e.target.value))},value:m.toString(),sx:w,noLabelMinWidth:!0})}),(0,d.jsx)(a.azJ,{children:(0,d.jsx)(a.cl_,{id:t,className:"reverseInput removeArrows",type:"number",min:"0",max:"23",label:"Hours",name:t,onChange:e=>{b(parseInt(e.target.value))},value:j.toString(),sx:w,noLabelMinWidth:!0})}),(0,d.jsx)(a.azJ,{children:(0,d.jsx)(a.cl_,{id:t,className:"reverseInput removeArrows",type:"number",min:"0",max:"59",label:"Minutes",name:t,onChange:e=>{f(parseInt(e.target.value))},value:g.toString(),sx:w,noLabelMinWidth:!0})})]}),(0,d.jsx)(a.azJ,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-start",marginTop:25,marginLeft:10,marginBottom:15,"& .validityText":{fontSize:14,marginTop:15,display:"flex",alignItems:"center",justifyContent:"center","@media (max-width: 900px)":{flexFlow:"column"},"& > .min-icon":{color:"#5E5E5E",width:15,height:15,marginRight:10}},"& .validTill":{fontWeight:"bold",marginLeft:15},"& .invalidDurationText":{marginTop:15,display:"flex",color:"red",fontSize:11}},children:v?(0,d.jsxs)("div",{className:"validityText",children:[(0,d.jsx)(a.qYV,{}),(0,d.jsxs)("div",{children:[l," will be available until:"]})," ",(0,d.jsx)("div",{className:"validTill",children:S.toFormat("MM/dd/yyyy HH:mm:ss ZZZZ")})]}):(0,d.jsx)("div",{className:"invalidDurationText",children:"Please select a valid duration."})})]})};var h=n(56483),x=n(64159),m=n(20554),p=n(56629),j=n(53518),b=n(81708),g=n(6035);const f=e=>{let{open:t,closeModalAndRefresh:n,bucketName:i,dataObject:c}=e;const f=(0,m.jL)(),v=(0,o.d4)(x.Rq),_=(0,o.d4)(g.yL),[S,O]=(0,s.useState)(""),[w,T]=(0,s.useState)(!0),[y,C]=(0,s.useState)(!1),[E,N]=(0,s.useState)(""),[A,I]=(0,s.useState)(!0),[k,B]=(0,s.useState)("null"),F=new Date;return(0,s.useEffect)((()=>{f((0,b.Ex)())}),[f]),(0,s.useEffect)((()=>{if(void 0===c.version_id)return v?(p.F.buckets.listObjects(i,{prefix:(0,h.nf)(c.name||""),with_versions:v}).then((e=>{const t=(e.data.objects||[]).find((e=>e.is_latest));B(t?"".concat(t.version_id):"null")})).catch((e=>{f((0,x.Dy)((0,j.S)(e.error)))})),void T(!1)):(B("null"),void T(!1));B(c.version_id||"null"),T(!1)}),[i,c,v,f]),(0,s.useEffect)((()=>{if(A&&!w){C(!0),O("");const e=new Date("".concat(E)),t=new Date,n=Math.ceil((e.getTime()-t.getTime())/1e3);n>0&&p.F.buckets.shareObject(i,{prefix:(0,h.nf)(c.name||""),version_id:k,expires:""!==E?"".concat(n,"s"):""}).then((e=>{O(e.data),C(!1)})).catch((e=>{f((0,x.Dy)((0,j.S)(e.error))),O(""),C(!1)}))}}),[c,E,i,A,O,f,v,w,k]),(0,d.jsx)(s.Fragment,{children:(0,d.jsxs)(r.A,{title:"Share File",titleIcon:(0,d.jsx)(a.liv,{style:{fill:"#4CCB92"}}),modalOpen:t,onClose:()=>{n()},children:[w&&(0,d.jsx)(a.xA9,{item:!0,xs:12,children:(0,d.jsx)(a.z21,{})}),!w&&(0,d.jsxs)(s.Fragment,{children:[(0,d.jsx)(a.xA9,{item:!0,xs:12,sx:{fontSize:14,fontWeight:400},children:(0,d.jsx)(a.m_M,{placement:"right",tooltip:(0,d.jsxs)("span",{children:["You can reset your session by logging out and logging back in to the web UI. ",(0,d.jsx)("br",{})," ",(0,d.jsx)("br",{}),"You can increase the maximum configuration time by setting the MINIO_STS_DURATION environment variable on all your nodes. ",(0,d.jsx)("br",{})," ",(0,d.jsx)("br",{}),"You can use ",(0,d.jsx)("b",{children:"mc share"})," as an alternative to this UI, where the session length does not limit the URL validity."]}),children:(0,d.jsxs)("span",{children:["The following URL lets you share this object without requiring a login. ",(0,d.jsx)("br",{}),"The URL expires automatically at the earlier of your configured time (",(0,h.K7)(_),") or the expiration of your current web session."]})})}),(0,d.jsx)("br",{}),(0,d.jsx)(a.xA9,{item:!0,xs:12,children:(0,d.jsx)(u,{initialDate:F,id:"date",label:"Active for",maxSeconds:_,onChange:(e,t)=>{I(t),t?N(e):(N(""),O(""))},entity:"Link"})}),(0,d.jsx)(a.xA9,{item:!0,xs:12,sx:{marginBottom:10},children:(0,d.jsx)(a.EmB,{actionButton:(0,d.jsx)(l(),{text:S,children:(0,d.jsx)(a.$nd,{id:"copy-path",variant:"regular",onClick:()=>{f((0,x.h0)("Share URL Copied to clipboard"))},disabled:""===S||y,style:{width:"28px",height:"28px",padding:"0px"},icon:(0,d.jsx)(a.TdU,{})})}),children:S})})]})]})})}},37524:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>f});var s=n(65043),o=n(94141),a=n(89923),i=n(33097),l=n.n(i),r=n(93445),c=n(56483),d=n(56629),u=n(72809),h=n(66730),x=n(10934),m=n(70579);u.A.GlobalWorkerOptions.workerSrc="./scripts/pdf.worker.min.js";const p=e=>{let{path:t,loading:n,onLoad:o,downloadFile:i}=e;const[l,r]=(0,s.useState)(!1),[c,d]=(0,s.useState)(0);if(!t)return null;const u=c>5?5:c,p=Array.from(Array(u).keys());return(0,m.jsxs)(s.Fragment,{children:[l&&0===c&&(0,m.jsx)(a.Wei,{variant:"error",title:"Error",message:(0,m.jsxs)(s.Fragment,{children:["File preview couldn't be displayed, Please try Download instead.",(0,m.jsx)(a.azJ,{sx:{display:"flex",justifyContent:"center",marginTop:12},children:(0,m.jsx)(a.$nd,{id:"download-preview",onClick:i,variant:"callAction",children:"Download File"})})]}),sx:{marginBottom:10}}),!n&&!l&&(0,m.jsx)(a.Wei,{variant:"warning",title:"File Preview",message:(0,m.jsxs)(s.Fragment,{children:["This is a File Preview for the first ",p.length," pages of the document, if you wish to work with the full document please download instead.",(0,m.jsx)(a.azJ,{sx:{display:"flex",justifyContent:"center",marginTop:12},children:(0,m.jsx)(a.$nd,{id:"download-preview",onClick:i,variant:"callAction",children:"Download File"})})]}),sx:{marginBottom:10}}),!l&&(0,m.jsx)(a.azJ,{sx:{overflowY:"auto","& .react-pdf__Page__canvas":{margin:"0 auto",backgroundColor:"transparent"}},children:(0,m.jsx)(h.A,{file:t,onLoadSuccess:e=>{let{_pdfInfo:t}=e;d(t.numPages||0),r(!1),o()},onLoadError:e=>{r(!0),o(),console.error(e)},children:p.map((e=>(0,m.jsx)(x.A,{pageNumber:e+1,renderAnnotationLayer:!1,renderTextLayer:!1,renderForms:!1},"render-page-".concat(e))))})})]})};var j=n(48245),b=n(20554);const g=e=>{let{bucketName:t,actualInfo:n,isFullscreen:o=!1}=e;const i=(0,b.jL)(),[u,h]=(0,s.useState)(!0),[x,g]=(0,s.useState)(null),[f,v]=(0,s.useState)(!1),_=(null===n||void 0===n?void 0:n.name)||"",S=(0,s.useCallback)((()=>{if(!f){const e=(0,c.nf)(_);d.F.buckets.getObjectMetadata(t,{prefix:e}).then((e=>{let t=l()(e.data,"objectMetadata",{});v(!0),g(t)})).catch((e=>{console.error("Error Getting Metadata Status: ",e,null===e||void 0===e?void 0:e.detailedError),v(!0)}))}}),[t,_,f]);(0,s.useEffect)((()=>{t&&_&&S()}),[t,_,S]);let O="";if(n){const e=(0,c.nf)(n.name||"");let s=document.baseURI.replace(window.location.origin,"");O="".concat(window.location.origin).concat(s,"api/v1/buckets/").concat(t,"/objects/download?preview=true&prefix=").concat(e),n.version_id&&(O=O.concat("&version_id=".concat(n.version_id)))}let w=(0,r.IZ)(x,_);const T=()=>{h(!1)};return(0,m.jsxs)(s.Fragment,{children:["none"!==w&&u&&(0,m.jsx)(a.xA9,{item:!0,xs:12,children:(0,m.jsx)(a.z21,{})}),f?(0,m.jsxs)(a.azJ,{sx:{textAlign:"center","& .iframeContainer":{border:"0px",flex:"1 1 auto",width:"100%",height:250,backgroundColor:"transparent",borderRadius:5,"&.image":{height:500},"&.audio":{height:150},"&.video":{height:350},"&.fullHeight":{height:"calc(100vh - 185px)"}},"& .iframeBase":{backgroundColor:"#fff"},"& .iframeHidden":{display:"none"}},children:["video"===w&&(0,m.jsx)("video",{style:{width:"auto",height:"auto",maxWidth:"calc(100vw - 100px)",maxHeight:"calc(100vh - 200px)"},autoPlay:!0,controls:!0,muted:!1,playsInline:!0,onPlay:T,children:(0,m.jsx)("source",{src:O,type:"video/mp4"})}),"audio"===w&&(0,m.jsx)("audio",{style:{width:"100%",height:"auto"},autoPlay:!0,controls:!0,muted:!1,playsInline:!0,onPlay:T,children:(0,m.jsx)("source",{src:O,type:"audio/mpeg"})}),"image"===w&&(0,m.jsx)("img",{style:{width:"auto",height:"auto",maxWidth:"100vw",maxHeight:"100vh"},src:O,alt:"preview",onLoad:T}),"pdf"===w&&(0,m.jsx)(s.Fragment,{children:(0,m.jsx)(p,{path:O,onLoad:T,loading:u,downloadFile:()=>(0,j._)(i,t,O,n)})}),"none"===w&&(0,m.jsx)("div",{children:(0,m.jsx)(a.Wei,{message:" File couldn't be previewed using file extension or mime type. Please try Download instead",title:"Preview unavailable",sx:{margin:"15px 0"}})}),"none"!==w&&"video"!==w&&"audio"!==w&&"image"!==w&&"pdf"!==w&&(0,m.jsx)("div",{className:"iframeBase ".concat(u?"iframeHidden":""),children:(0,m.jsx)("iframe",{src:O,title:"File Preview",allowTransparency:!0,className:"iframeContainer ".concat(o?"fullHeight":w),onLoad:T,children:"File couldn't be loaded. Please try Download instead"})})]}):null]})},f=e=>{let{open:t,bucketName:n,actualInfo:i,onClosePreview:l}=e;return(0,m.jsx)(s.Fragment,{children:(0,m.jsx)(o.A,{modalOpen:t,title:"Preview - ".concat(null===i||void 0===i?void 0:i.name),onClose:l,wideLimit:!1,titleIcon:(0,m.jsx)(a.jG,{}),children:(0,m.jsx)(g,{bucketName:n,actualInfo:i})})})}},72237:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});var s=n(65043),o=n(70579);const a=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return function(n){return(0,o.jsx)(s.Suspense,{fallback:t,children:(0,o.jsx)(e,{...n})})}}},81708:(e,t,n)=>{"use strict";n.d(t,{Ex:()=>p,HS:()=>h,mS:()=>x,op:()=>u,oz:()=>m});var s=n(80907),o=n(56483),a=n(37414),i=n(93445),l=n(6035),r=n(64159),c=n(24241),d=n(56629);const u=(0,s.zD)("objectBrowser/downloadSelected",(async(e,t)=>{let{getState:n,rejectWithValue:s,dispatch:d}=t;const u=n(),h=t=>{const n=(0,o.nf)("".concat(e,"-").concat(t.name,"-").concat((new Date).getTime(),"-").concat(Math.random())),s=(0,a.E0)(8),c=(0,i.RG)(e,(0,o.nf)(t.name),t.version_id,t.size,null,s,(e=>{d((0,l.DW)({instanceID:n,progress:e}))}),(()=>{d((0,l.rx)(n))}),(e=>{d((0,l.iL)({instanceID:n,msg:e}))}),(()=>{d((0,l.Dm)(n))}),(()=>{d((0,r.Hk)("File download will be handled directly by the browser."))}));(0,a.FP)(s,c),d((0,l.cP)({ID:s,bucketName:e,done:!1,instanceID:n,percentage:0,prefix:t.name,type:"download",waitingForFile:!0,failed:!1,cancelled:!1,errorMessage:""}))};if(0!==u.objectBrowser.selectedObjects.length){let t=[];const n=e=>u.objectBrowser.selectedObjects.includes(e.name);if(t=u.objectBrowser.records.filter(n),1===t.length){if(t[0].name.length>200&&(0,o.oK)().toLowerCase().includes("win"))return void d((0,l.Ew)(t[0]));h(t[0])}else if(1===t.length)h(t[0]);else if(t.length>1){const n="".concat(c.c9.now().toFormat("LL-dd-yyyy-HH-mm-ss"),"_files_list.zip"),s=t.reduce(((e,t)=>{const n=null===t||void 0===t?void 0:t.delete_flag;return t&&!n?e.push(t.name):console.log("Skipping ".concat(null===t||void 0===t?void 0:t.name," from download.")),e}),[]);return void await(0,i.Fj)(e,s,n)}}})),h=(0,s.zD)("objectBrowser/openPreview",(async(e,t)=>{let{getState:n,rejectWithValue:s,dispatch:o}=t;const a=n();if(1===a.objectBrowser.selectedObjects.length){let e;const t=e=>a.objectBrowser.selectedObjects.includes(e.name);e=a.objectBrowser.records.find(t),e&&(o((0,l.go)(e)),o((0,l.xE)(!0)))}})),x=(0,s.zD)("objectBrowser/openShare",(async(e,t)=>{let{getState:n,rejectWithValue:s,dispatch:o}=t;const a=n();if(1===a.objectBrowser.selectedObjects.length){let e;const t=e=>a.objectBrowser.selectedObjects.includes(e.name);e=a.objectBrowser.records.find(t),e&&(o((0,l.go)(e)),o((0,l.Lf)(!0)))}})),m=(0,s.zD)("objectBrowser/openAnonymousAccess",(async(e,t)=>{let{getState:n,dispatch:s}=t;const o=n();1===o.objectBrowser.selectedObjects.length&&o.objectBrowser.selectedObjects[0].endsWith("/")&&s((0,l.I8)(!0))})),p=(0,s.zD)("objectBrowser/maxShareLinkExpTime",(async(e,t)=>{let{rejectWithValue:n,dispatch:s}=t;return d.F.buckets.getMaxShareLinkExp().then((e=>{s((0,l.QV)(e.data.exp))})).catch((async e=>n(e.error)))}))},48245:(e,t,n)=>{"use strict";n.d(t,{_:()=>r});var s=n(56483),o=n(37414),a=n(93445),i=n(6035),l=n(64159);const r=(e,t,n,r)=>{var c;const d=(0,s.nf)("".concat(t,"-").concat(r.name,"-").concat((new Date).getTime(),"-").concat(Math.random())),u=(0,s.oK)().toLowerCase().includes("win");if(((null===(c=r.name)||void 0===c?void 0:c.length)||0)>200&&u)return void e((0,i.Jl)(!0));const h=(0,o.E0)(8),x=(0,a.RG)(t,n,r.version_id,r.size||0,null,h,(t=>{e((0,i.DW)({instanceID:d,progress:t}))}),(()=>{e((0,i.rx)(d))}),(t=>{e((0,i.iL)({instanceID:d,msg:t}))}),(()=>{e((0,i.Dm)(d))}),(()=>{e((0,l.Hk)("File download will be handled directly by the browser."))}));(0,o.FP)(h,x),e((0,i.cP)({ID:h,bucketName:t,done:!1,instanceID:d,percentage:0,prefix:r.name||"",type:"download",waitingForFile:!0,failed:!1,cancelled:!1,errorMessage:""}))}},49501:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var s=n(65043),o=n(89923),a=n(70579);const i=e=>{let{value:t}=e;const[n,i]=(0,s.useState)(!1);return(0,a.jsxs)(o.azJ,{sx:{display:"flex",alignItems:"center",flexFlow:"row",["@media (max-width: ".concat(o.nmC.sm,"px)")]:{flexFlow:"column"}},children:[(0,a.jsx)(o.cl_,{id:"inspect-dec-key",name:"inspect-dec-key",placeholder:"",label:"",type:n?"text":"password",onChange:()=>{},value:t,overlayIcon:(0,a.jsx)(o.TdU,{}),readOnly:!0,overlayAction:()=>navigator.clipboard.writeText(t)}),(0,a.jsx)(o.$nd,{id:"show-hide-key",style:{marginLeft:"10px"},variant:"callAction",onClick:()=>i(!n),label:"Show/Hide"})]})}},17640:()=>{},23237:()=>{},97492:()=>{},31815:()=>{},66671:()=>{},82787:()=>{}}]); -//# sourceMappingURL=2959.25a10423.chunk.js.map \ No newline at end of file diff --git a/web-app/build/static/js/2959.25a10423.chunk.js.map b/web-app/build/static/js/2959.25a10423.chunk.js.map deleted file mode 100644 index d03526dec8..0000000000 --- a/web-app/build/static/js/2959.25a10423.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/2959.25a10423.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/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 { encodeURLString, 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/${bucketName}/${\n subSplit ? `${encodeURLString(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 ? `/${encodeURLString(`${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 { encodeURLString } from \"common/utils\";\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: encodeURLString(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: encodeURLString(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 { decodeURLString } from \"../../../../../../common/utils\";\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 decodedSelectedObject = decodeURLString(selectedObject);\n const recursive = decodedSelectedObject.endsWith(\"/\");\n invokeDeleteApi(\n \"DELETE\",\n `/api/v1/buckets/${selectedBucket}/objects?prefix=${selectedObject}${\n selectedVersion !== \"\"\n ? `&version_id=${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 {decodeURLString(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 { encodeURLString } from \"../../../../../../common/utils\";\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: encodeURLString(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}\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 { encodeURLString } from \"common/utils\";\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 selectedObject = encodeURLString(actualInfo.name || \"\");\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: selectedObject, 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: selectedObject, 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 decodeURLString,\n deleteCookie,\n encodeURLString,\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 const file = encodeURLString(inspectPath + \"/xl.meta\");\n const volume = encodeURLString(volumeName);\n\n let basename = document.baseURI.replace(window.location.origin, \"\");\n const urlOfInspectApi = `${window.location.origin}${basename}/api/v1/admin/inspect?volume=${volume}&file=${file}&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 {decodeURLString(inspectPath)}?{\" \"}\n
\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 decodeURLString,\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 = decodeURLString(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 })\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]);\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 { encodeURLString } from \"../../../../../../common/utils\";\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: encodeURLString(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 { decodeURLString } from \"../../../../../../common/utils\";\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 {decodeURLString(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 { decodeURLString, 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 const decodedInternalPaths = decodeURLString(internalPaths);\n\n // Filter the results prefixes as API can return more files than expected.\n const filteredPrefixes = result.filter(\n (item: BucketObject) => item.name === decodedInternalPaths,\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 { encodeURLString } from \"../../../../../../common/utils\";\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 filteredRecords = records.filter((b: BucketObjectItem) => {\n if (searchObjects === \"\") {\n return true;\n } else {\n const objectName = b.name.toLowerCase();\n if (objectName.indexOf(searchObjects.toLowerCase()) >= 0) {\n return true;\n } else {\n return false;\n }\n }\n });\n\n const plSelect = filteredRecords;\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/${bucketName}${\n idElement ? `/${encodeURLString(idElement)}` : ``\n }`;\n\n // for anonymous start download\n if (anonymousMode && !object.name?.endsWith(\"/\")) {\n downloadObject(\n dispatch,\n bucketName,\n `${encodeURLString(idElement)}`,\n object,\n );\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(\n setSelectedObjectView(\n `${idElement ? `${encodeURLString(idElement)}` : ``}`,\n ),\n );\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 {\n decodeURLString,\n encodeURLString,\n niceBytesInt,\n} 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 = pathSegment.length === 2 ? pathSegment[1] : \"\";\n\n const pageTitle = decodeURLString(internalPaths);\n const currentPath = pageTitle.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 const encodedPath = encodeURLString(objectName);\n\n if (!isMetaDataLoaded && encodedPath) {\n api.buckets\n .getObjectMetadata(bucketName, {\n prefix: encodedPath,\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 let encodedPath = \"\";\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=${encodeURLString(\n prefixPath + fileName,\n )}`;\n } else {\n uploadUrl = `${uploadUrl}?prefix=${encodeURLString(fileName)}`;\n }\n\n encodedPath = encodeURLString(prefixPath);\n\n const identity = encodeURLString(\n `${bucketName}-${encodedPath}-${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: `${decodeURLString(encodedPath)}${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 decodedPath = decodeURLString(internalPaths);\n const splitURLS = decodedPath.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(`/browser/${bucketName}/${encodeURLString(URLItem)}`);\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 { decodeURLString, encodeURLString } from \"../../../../common/utils\";\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(`/browser/${bucketName}/`);\n const internalPaths = pathSegment.length === 2 ? 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 const decodedInternalPaths = decodeURLString(internalPaths);\n\n // We exit Versions mode in case of path change\n dispatch(setVersionsModeEnabled({ status: false }));\n\n let searchPath = decodedInternalPaths;\n\n if (!decodedInternalPaths.endsWith(\"/\") && decodedInternalPaths !== \"\") {\n searchPath = `${decodedInternalPaths\n .split(\"/\")\n .slice(0, -1)\n .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 const decodedIPaths = decodeURLString(internalPaths);\n\n dispatch(setLoadingVersioning(true));\n\n if (decodedIPaths.endsWith(\"/\") || decodedIPaths === \"\") {\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(\n setSelectedObjectView(\n `${decodedIPaths ? `${encodeURLString(decodedIPaths)}` : ``}`,\n ),\n );\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 initialDate: Date;\n maxSeconds: number;\n label: string;\n entity: string;\n onChange: (newDate: string, isValid: boolean) => void;\n}\n\nconst calculateNewTime = (\n initialDate: Date,\n days: number,\n hours: number,\n minutes: number,\n) => {\n return DateTime.fromJSDate(initialDate).plus({\n hours: hours + days * 24,\n minutes,\n }); // Lump days into hours to avoid daylight savings causing issues\n};\n\nconst DaysSelector = ({\n id,\n initialDate,\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(DateTime.now());\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(\n initialDate,\n selectedDays,\n selectedHours,\n selectedMinutes,\n ),\n );\n }\n }, [initialDate, selectedDays, selectedHours, selectedMinutes]);\n\n useEffect(() => {\n if (validDate) {\n const formattedDate = dateSelected.toFormat(\"yyyy-MM-dd HH:mm:ss\");\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 ? (\n
\n \n
{entity} will be available until:
{\" \"}\n
\n {dateSelected.toFormat(\"MM/dd/yyyy HH:mm:ss ZZZZ\")}\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 {\n encodeURLString,\n niceTimeFromSeconds,\n} 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\";\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 initialDate = new Date();\n\n const dateChanged = (newDate: string, isValid: boolean) => {\n setDateValid(isValid);\n if (isValid) {\n setSelectedDate(newDate);\n return;\n }\n setSelectedDate(\"\");\n setShareURL(\"\");\n };\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: encodeURLString(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: encodeURLString(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.js\";\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 { encodeURLString } from \"../../../../../../common/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 const encodedPath = encodeURLString(objectName);\n api.buckets\n .getObjectMetadata(bucketName, {\n prefix: encodedPath,\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]);\n\n useEffect(() => {\n if (bucketName && objectName) {\n fetchMetadata();\n }\n }, [bucketName, objectName, fetchMetadata]);\n\n let path = \"\";\n\n if (actualInfo) {\n const encodedPath = encodeURLString(actualInfo.name || \"\");\n let basename = document.baseURI.replace(window.location.origin, \"\");\n path = `${window.location.origin}${basename}api/v1/buckets/${bucketName}/objects/download?preview=true&prefix=${encodedPath}`;\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) 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 { encodeURLString, 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 = encodeURLString(\n `${bucketName}-${object.name}-${new Date().getTime()}-${Math.random()}`,\n );\n\n const ID = makeid(8);\n\n const downloadCall = download(\n bucketName,\n encodeURLString(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 { encodeURLString, 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 = encodeURLString(\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","encodeURLString","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","decodeURLString","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","file","volume","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","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","versionID","deleteMultipleObjects","all_versions","searchVersions","loadingVersions","restoreVersionOpen","setRestoreVersionOpen","setRestoreVersion","sortValue","setSortValue","deleteNonCurrentOpen","setDeleteNonCurrentOpen","selectEnabled","setSelectEnabled","selectedItems","setSelectedItems","delSelectedVOpen","setDelSelectedVOpen","decodedInternalPaths","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","pageTitle","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","encodedPath","resetRewind","setAttribute","isPrefix","getBucketQuota","quotaVals","detailedMessage","setBucketDetailsLoad","setBucketInfo","getBucketRetentionConfig","setRetentionConfig","handleUploadButton","files","newFiles","uploadObject","folderPath","pathPrefix","upload","uploadPromise","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","decodedIPaths","setLoadingVersioning","setLoadingLocking","getBucketVersioning","setIsVersioned","getBucketObjectLockingStatus","setLockingEnabled","object_locking_enabled","OBHeader","initialDate","maxSeconds","entity","maxDays","maxHours","maxMinutes","selectedDays","setSelectedDays","selectedHours","setSelectedHours","selectedMinutes","setSelectedMinutes","setValidDate","dateSelected","setDateSelected","calculateNewTime","hours","minutes","fromJSDate","plus","formattedDate","valid","extraStyles","paddingLeft","min","max","LinkIcon","maxshareLinkExpTimeVal","maxShareLinkExpTime","shareURL","setShareURL","isLoadingVersion","setIsLoadingVersion","isLoadingFile","setIsLoadingFile","selectedDate","setSelectedDate","dateValid","setDateValid","setVersionID","getMaxShareLinkExpTime","latestVersion","elem","slDate","currDate","diffDate","ceil","shareObject","niceTimeFromSeconds","DaysSelector","dateChanged","newDate","ReadBox","actionButton","setModalSnackMessage","pdfjs","GlobalWorkerOptions","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","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/2959.e0878952.chunk.js b/web-app/build/static/js/2959.e0878952.chunk.js new file mode 100644 index 0000000000..27594551c1 --- /dev/null +++ b/web-app/build/static/js/2959.e0878952.chunk.js @@ -0,0 +1,2 @@ +(self.webpackChunkweb_app=self.webpackChunkweb_app||[]).push([[2959,614],{30614:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>h});var s=n(65043),o=n(94141),a=n(89923),i=n(56629),l=n(53518),r=n(77403),c=n(64159),d=n(20554),u=n(70579);const h=e=>{let{modalOpen:t,onClose:n,bucket:h,prefilledRoute:x}=e;const m=(0,d.jL)(),[p,j]=(0,s.useState)(""),[b,g]=(0,s.useState)("readonly");(0,s.useEffect)((()=>{x&&j(x)}),[x]);return(0,u.jsx)(o.A,{modalOpen:t,title:"Add Anonymous Access Rule",onClose:n,titleIcon:(0,u.jsx)(a.No_,{}),children:(0,u.jsxs)(a.Hbc,{withBorders:!1,containerPadding:!1,children:[(0,u.jsx)(a.cl_,{value:p,label:"Prefix",id:"prefix",name:"prefix",placeholder:"Enter Prefix",onChange:e=>{j(e.target.value)},tooltip:"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."}),(0,u.jsx)(a.l6P,{id:"access",name:"Access",onChange:e=>{g(e)},label:"Access",value:b,options:[{label:"readonly",value:"readonly"},{label:"writeonly",value:"writeonly"},{label:"readwrite",value:"readwrite"}],disabled:!1,helpTip:(0,u.jsx)(s.Fragment,{children:"Select the desired level of access available to unauthenticated Users"}),helpTipPlacement:"right"}),(0,u.jsxs)(a.xA9,{item:!0,xs:12,sx:r.Uz.modalButtonBar,children:[(0,u.jsx)(a.$nd,{id:"clear",type:"button",variant:"regular",onClick:()=>{j(""),g("readonly")},label:"Clear"}),(0,u.jsx)(a.$nd,{id:"add-access-save",type:"submit",variant:"callAction",disabled:""===p.trim(),onClick:()=>{i.F.bucket.setAccessRuleWithBucket(h,{prefix:p,access:b}).then((e=>{m((0,c.Hk)("Access Rule added successfully")),n()})).catch((e=>{m((0,c.C9)((0,l.S)(e.error))),n()}))},label:"Save"})]})]})})}},27945:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>Me});var s=n(65043),o=n(22166),a=n(73216),i=n(56629),l=n(20554),r=n(99161),c=n(56483),d=n(6035),u=n(33097),h=n.n(u),x=n(89923),m=n(53518),p=n(94281),j=n(24241),b=n(61476),g=n.n(b),f=n(94574),v=n(35475),_=n(77938),S=n(72237),O=n(64159);const w=e=>(e.match(/\.([^.]*?)(?=\?|#|$)/)||[])[1],T=function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];const s=Object.keys(e).reduce(((n,s)=>(w(s)&&s.includes(t)&&(n[s]=e[s]),n)),{});return Object.keys(s).filter((e=>{const o=s[e].some((e=>n.find((t=>{let n=!1;if(-1!==t.indexOf("*")){const s=t.substring(0,t.length-1);n=e.includes(s)}return n||e===t})))),a=e.substring(0,e.indexOf("/*."))==="arn:aws:s3:::".concat(t);return o&&(a&&"arn:aws:s3:::*"!==e)}))};var y=n(70579);const C=(0,S.A)(s.lazy((()=>n.e(7774).then(n.bind(n,97774))))),E=f.Ay.div((()=>({display:"flex","& .additionalOptions":{paddingRight:"10px",display:"flex",alignItems:"center",["@media (max-width: ".concat(x.nmC.lg,"px)")]:{display:"none"}},"& .slashSpacingStyle":{margin:"0 5px"}}))),N=e=>{let{bucketName:t,internalPaths:n,hidePathButton:i,additionalOptions:u}=e;const h=(0,l.jL)(),m=(0,a.Zp)(),p=(0,o.d4)((e=>e.objectBrowser.rewind.rewindEnabled)),j=(0,o.d4)((e=>e.objectBrowser.versionsMode)),b=(0,o.d4)((e=>e.objectBrowser.versionedFile)),f=(0,o.d4)((e=>e.system.anonymousMode)),[S,w]=(0,s.useState)(!1),[N,A]=(0,s.useState)(!1),I=[r.OV.S3_PUT_OBJECT,r.OV.S3_PUT_ACTIONS],k=(0,o.d4)((e=>e.console.session&&e.console.session.permissions||{}));let B=n;""!==n&&(B="/".concat(n));const F=B.split("/").filter((e=>""!==e)),L=F.length-1,V=t+B||t,D=T(k,V,I);(0,s.useEffect)((()=>{A(!1),Object.keys(k).forEach((e=>{e.includes(V)&&e.includes("/*")&&A(!0)}))}),[V,n,k]);const P=(0,_._)([V,...D],I)||f||N;let R=F.map(((e,n)=>{const o="".concat(F.slice(0,n+1).join("/"),"/"),a="/browser/".concat(t,"/").concat(o?"".concat((0,c.nf)(o)):"");return n===L&&e===b?null:(0,y.jsxs)(s.Fragment,{children:[(0,y.jsx)("span",{className:"slashSpacingStyle",children:"/"}),n===L?(0,y.jsx)("span",{style:{cursor:"default",whiteSpace:"pre"},children:(0,c.Tw)(e)}):(0,y.jsx)(v.N_,{style:{whiteSpace:"pre"},to:a,onClick:()=>{h((0,d.cQ)({status:!1,objectName:""}))},children:(0,c.Tw)(e)})]},"breadcrumbs-".concat(n.toString()))})),U=[];j&&(U=[(0,y.jsx)(s.Fragment,{children:(0,y.jsxs)("span",{children:[(0,y.jsx)("span",{className:"slashSpacingStyle",children:"/"}),b," - Versions"]})},"breadcrumbs-versionedItem")]);const z=[(0,y.jsx)(s.Fragment,{children:(0,y.jsx)(v.N_,{to:"/browser/".concat(t),onClick:()=>{h((0,d.cQ)({status:!1,objectName:""}))},children:t})},"breadcrumbs-root-path"),...R,...U];return(0,y.jsxs)(s.Fragment,{children:[(0,y.jsxs)(E,{children:[S&&(0,y.jsx)(C,{modalOpen:S,bucketName:t,folderName:n,onClose:()=>{w(!1)},limitedSubPath:N&&!((0,_._)([V,...D],I)||f)}),(0,y.jsx)(x.BIu,{sx:{whiteSpace:"pre"},goBackFunction:()=>{if(j)h((0,d.cQ)({status:!1,objectName:""}));else{if(0===F.length)return void m("/browser");const e=F.slice(0,-1);m("/browser/".concat(t).concat(e.length>0?"/".concat((0,c.nf)("".concat(e.join("/"),"/"))):""))}},additionalOptions:(0,y.jsxs)(s.Fragment,{children:[(0,y.jsx)(g(),{text:"".concat(t,"/").concat(F.join("/")),children:(0,y.jsx)(x.$nd,{id:"copy-path",icon:(0,y.jsx)(x.TdU,{style:{width:"12px",height:"12px",fill:"#969FA8",marginTop:-1}}),variant:"regular",onClick:()=>{h((0,O.Hk)("Path copied to clipboard"))},style:{width:"28px",height:"28px",color:"#969FA8",border:"#969FA8 1px solid",marginRight:5}})}),(0,y.jsx)(x.azJ,{className:"additionalOptions",children:u})]}),children:z}),!i&&(0,y.jsx)(x.m_M,{tooltip:P?"Choose or create a new path":(0,r.vj)([r.OV.S3_PUT_OBJECT,r.OV.S3_PUT_ACTIONS],"create a new path"),children:(0,y.jsx)(x.$nd,{id:"new-path",onClick:()=>{w(!0)},disabled:!f&&(p||!P),icon:(0,y.jsx)(x.pj3,{style:{fill:"#969FA8"}}),style:{whiteSpace:"nowrap"},variant:"regular",label:"Create new path"})})]}),(0,y.jsx)(x.azJ,{sx:{display:"none",marginTop:15,marginBottom:5,justifyContent:"flex-start","& > div":{fontSize:12,fontWeight:"normal",flexDirection:"row",flexWrap:"nowrap"},["@media (max-width: ".concat(x.nmC.lg,"px)")]:{display:"flex"}},children:u})]})};var A=n(93445);const I=e=>"Enabled"===e||"Suspended"===e;var k=n(37414),B=n(39947),F=n(81708),L=n(6681);const V=e=>{let{uploadPath:t,bucketName:n,forceDisable:a=!1,uploadFileFunction:i,uploadFolderFunction:l,overrideStyles:c={}}=e;const[d,u]=(0,s.useState)(null),[h,m]=(0,s.useState)(!1),p=(0,o.d4)((e=>e.system.anonymousMode)),j=(0,o.d4)((e=>e.console.session&&e.console.session.permissions||{})),b=[r.OV.S3_PUT_OBJECT,r.OV.S3_PUT_ACTIONS],g=T(j,t,b),f=Boolean(d),v=()=>{u(null)},S=(0,_._)([t,...g],b)||p,O=(0,_._)([n,...g],b,!1,!0),w=S||O;return(0,y.jsxs)(s.Fragment,{children:[(0,y.jsx)(L.A,{tooltip:w?"Upload Files":(0,r.vj)([r.OV.S3_PUT_OBJECT,r.OV.S3_PUT_ACTIONS],"upload files to this bucket"),children:(0,y.jsx)(x.$nd,{id:"upload-main","aria-controls":"upload-main-menu","aria-haspopup":"true","aria-expanded":f?"true":void 0,onClick:e=>{m(!h),u(e.currentTarget)},label:"Upload",icon:(0,y.jsx)(x.JMY,{}),variant:"callAction",disabled:a||!w,sx:c})}),(0,y.jsx)(x.Vey,{id:"upload-main-menu",options:[{label:"Upload File",icon:(0,y.jsx)(x.JMY,{}),value:"file",disabled:!S||a},{label:"Upload Folder",icon:(0,y.jsx)(x.nDF,{}),value:"folder",disabled:!O||a}],selectedOption:"",onSelect:e=>{"folder"!==e?i(v):l(v)},hideTriggerAction:()=>{m(!1)},open:h,anchorEl:d,anchorOrigin:"end",useAnchorWidth:!0})]})},D=e=>{let{open:t,closePanel:n,className:s="",children:o}=e;return(0,y.jsxs)(x.azJ,{id:"details-panel",sx:{borderColor:"#EAEDEE",borderWidth:0,borderStyle:"solid",borderRadius:3,borderBottomLeftRadius:0,borderBottomRightRadius:0,width:0,transitionDuration:"0.3s",overflowX:"hidden",overflowY:"auto",position:"relative",opacity:0,marginLeft:-1,"&.open":{width:300,minWidth:300,borderLeftWidth:1,opacity:1},"@media (max-width: 799px)":{"&.open":{width:"100%",minWidth:"100%",borderLeftWidth:0}}},className:"".concat(t?"open":""," ").concat(s),children:[(0,y.jsx)(x.$nd,{variant:"text",id:"close-details-list",onClick:n,icon:(0,y.jsx)(x._FR,{}),sx:{position:"absolute",right:5,top:18,padding:0,height:14,"&:hover:not(:disabled)":{backgroundColor:"transparent"}}}),o]})};var P=n(48245);const R=e=>{let{icon:t,strings:n}=e;return(0,y.jsxs)(x.azJ,{sx:{display:"flex",alignItems:"center","& .min-icon":{width:16,height:16,marginRight:4,minWidth:16,minHeight:16},"& .fileNameText":{whiteSpace:"pre",overflow:"hidden",textOverflow:"ellipsis"}},children:[t,(0,y.jsx)("span",{className:"fileNameText",children:(0,c.qf)(n[n.length-1])})]})},U=[{icon:(0,y.jsx)(x.FRZ,{}),extensions:["mp4","mov","avi","mpeg","mpg"]},{icon:(0,y.jsx)(x.jCy,{}),extensions:["mp3","m4a","aac"]},{icon:(0,y.jsx)(x.yTC,{}),extensions:["pdf"]},{icon:(0,y.jsx)(x.QvW,{}),extensions:["ppt","pptx"]},{icon:(0,y.jsx)(x.z9t,{}),extensions:["xls","xlsx"]},{icon:(0,y.jsx)(x.VSs,{}),extensions:["cer","crt","pem"]},{icon:(0,y.jsx)(x.bM2,{}),extensions:["html","xml","css","py","go","php","cpp","h","java"]},{icon:(0,y.jsx)(x.qM2,{}),extensions:["cfg","yaml"]},{icon:(0,y.jsx)(x.ITz,{}),extensions:["sql"]},{icon:(0,y.jsx)(x.PcO,{}),extensions:["ttf","otf"]},{icon:(0,y.jsx)(x.yEV,{}),extensions:["doc","docx","txt","rtf"]},{icon:(0,y.jsx)(x.j_m,{}),extensions:["zip","rar","tar","gz"]},{icon:(0,y.jsx)(x.DUd,{}),extensions:["epub","mobi","azw","azw3"]},{icon:(0,y.jsx)(x.nLN,{}),extensions:["jpeg","jpg","gif","tiff","png","heic","dng"]}],z=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=e,s=(0,y.jsx)(x.KlI,{});e.endsWith("/")&&(s=(0,y.jsx)(x.kez,{}),n=e.slice(0,-1));const o=e.toLowerCase();for(const i of U)for(const e of i.extensions)o.endsWith(".".concat(e))&&(s=i.icon);!e.endsWith("/")&&e.indexOf(".")<0&&(s=(0,y.jsx)(x.YJK,{}));const a=n.split("/");return t?s:(0,y.jsx)(R,{icon:s,strings:a})};var G=n(37524);const M=e=>{let{metaData:t}=e;const n=Object.keys(t);return(0,y.jsx)(s.Fragment,{children:n.map(((e,n)=>{const s=(e=>Array.isArray(e)?e.map(c.Tw).join(", "):(0,c.Tw)(e))(t[e]);return(0,y.jsxs)(x.azJ,{sx:{marginBottom:15,fontSize:14,maxHeight:180,overflowY:"auto"},children:[(0,y.jsx)("strong",{children:e}),(0,y.jsx)("br",{}),s]},"box-meta-".concat(e,"-").concat(n.toString()))}))})};var J=n(30718),K=n(85330),W=n(77403);const H=[{value:"01",label:"January"},{value:"02",label:"February"},{value:"03",label:"March"},{value:"04",label:"April"},{value:"05",label:"May"},{value:"06",label:"June"},{value:"07",label:"July"},{value:"08",label:"August"},{value:"09",label:"September"},{value:"10",label:"October"},{value:"11",label:"November"},{value:"12",label:"December"}],Y=Array.from(Array(31),((e,t)=>({value:(t+1).toString(),label:(t+1).toString()}))),$=(new Date).getFullYear(),Z=Array.from(Array(50),((e,t)=>({value:(t+$).toString(),label:(t+$).toString()})));var q=n(94141);const Q=(0,s.forwardRef)(((e,t)=>{let{id:n,label:o,disableOptions:a=!1,tooltip:i="",borderBottom:l=!1,onDateChange:r,value:c=""}=e;(0,s.useImperativeHandle)(t,(()=>({resetDate:b})));const[d,u]=(0,s.useState)(""),[h,m]=(0,s.useState)(""),[p,j]=(0,s.useState)("");(0,s.useEffect)((()=>{if(""!==c){const e=c.split("-");j(e[0]),u(e[1]),m("".concat(parseInt(e[2])))}}),[c]),(0,s.useEffect)((()=>{const[e,t]=((e,t,n)=>{const s=Date.parse("".concat(e,"-").concat(t,"-").concat(n));if(isNaN(s))return[!1,""];const o=parseInt(t),a=parseInt(n),i=o<10?"0".concat(o):o,l=a<10?"0".concat(a):a,r=new Date(s).toISOString().split("T")[0],c="".concat(e,"-").concat(i,"-").concat(l);return[r===c,c]})(p,d,h);r(t,e)}),[d,h,p,r]);const b=()=>{u(""),m(""),j("")},g=()=>a||!1,f=[{value:"",label:""},...H],v=[{value:"",label:""},...Y],_=[{value:"",label:""},...Z];return(0,y.jsxs)(x.azJ,{className:"inputItem",children:[(0,y.jsx)(x.azJ,{sx:{display:"flex",alignItems:"center",gap:5,marginBottom:5},children:(0,y.jsxs)(x.l1Y,{htmlFor:n,children:[(0,y.jsx)("span",{children:o}),""!==i&&(0,y.jsx)(x.azJ,{sx:{marginLeft:5,display:"flex",alignItems:"center","& .min-icon":{width:13}},children:(0,y.jsx)(x.m_M,{tooltip:i,placement:"top",children:(0,y.jsx)(x.azJ,{sx:{"& .min-icon":{width:13}},children:(0,y.jsx)(x.NTw,{})})})})]})}),(0,y.jsxs)(x.azJ,{sx:{display:"flex",gap:12},children:[(0,y.jsx)(x.l6P,{id:"".concat(n,"-month"),name:"".concat(n,"-month"),value:d,onChange:e=>{u(e)},options:f,label:"",disabled:g()}),(0,y.jsx)(x.l6P,{id:"".concat(n,"-day"),name:"".concat(n,"-day"),value:h,onChange:e=>{m(e)},options:v,label:"",disabled:g()}),(0,y.jsx)(x.l6P,{id:"".concat(n,"-year"),name:"".concat(n,"-year"),value:p,onChange:e=>{j(e)},options:_,label:"",disabled:g(),sx:{marginBottom:12}})]})]})})),X=e=>{let{open:t,closeModalAndRefresh:n,objectName:a,objectInfo:r,bucketName:d}=e;const u=(0,l.jL)(),h=(0,o.d4)((e=>e.objectBrowser.retentionConfig)),[p,j]=(0,s.useState)(!0),[b,g]=(0,s.useState)(""),[f,v]=(0,s.useState)(""),[_,S]=(0,s.useState)(!1),[w,T]=(0,s.useState)(!1),[C,E]=(0,s.useState)(!1);(0,s.useEffect)((()=>{if(r.retention_mode&&(g((null===h||void 0===h?void 0:h.mode)||K.BT.Governance),E(!0)),r.retention_until_date){const t=new Date(r.retention_until_date);if("Invalid Date"!==t.toString()){const n=t.getFullYear(),s=(e=t.getMonth()+1)<10?"0".concat(e):"".concat(e),o=t.getDate();isNaN(o)||"NaN"===s||isNaN(n)||v("".concat(n,"-").concat(s,"-").concat(o))}E(!0)}var e}),[r,null===h||void 0===h?void 0:h.mode]);const N=(0,s.useRef)(null),A=()=>{j(!1),g(K.BT.Governance),N.current&&N.current.resetDate()},I=C&&("governance"===b||""===b);return(0,y.jsx)(q.A,{title:"Set Retention Policy",modalOpen:t,onClose:()=>{A(),n(!1)},children:(0,y.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:e=>{(e=>{e.preventDefault()})(e)},children:(0,y.jsxs)(x.Hbc,{withBorders:!1,containerPadding:!1,children:[(0,y.jsxs)(x.azJ,{className:"inputItem",children:[(0,y.jsx)("strong",{children:"Selected Object"}),": ",a]}),I&&(0,y.jsx)(x.dOG,{value:"status",id:"status",name:"status",checked:p,onChange:e=>{j(!p)},label:"Status",indicatorLabels:["Enabled","Disabled"]}),(0,y.jsx)(x.z6M,{currentValue:b,id:"type",name:"type",label:"Type",disableOptions:!p||C&&""!==b,onChange:e=>{g(e.target.value)},selectorOptions:[{label:"Governance",value:K.BT.Governance},{label:"Compliance",value:K.BT.Compliance}]}),(0,y.jsx)(Q,{id:"date",label:"Date",disableOptions:!(p&&("governance"===b||"compliance"===b)),ref:N,value:f,borderBottom:!0,onDateChange:(e,t)=>{S(t),t&&v(e)}}),(0,y.jsxs)(x.xA9,{item:!0,xs:12,sx:W.Uz.modalButtonBar,children:[(0,y.jsx)(x.$nd,{id:"reset",type:"button",variant:"regular",onClick:A,label:"Reset"}),(0,y.jsx)(x.$nd,{id:"save",type:"submit",variant:"callAction",disabled:p&&""===b||p&&!_||w,onClick:()=>{T(!0);const e=r.name||"",t=r.version_id||null,s=p||"governance"!==b?"".concat(f,"T23:59:59Z"):"";p||"governance"!==b?((e,t,s)=>{i.F.buckets.putObjectRetention(d,{prefix:(0,c.nf)(e),version_id:t||""},{expires:s,mode:b}).then((()=>{T(!1),n(!0)})).catch((e=>{u((0,O.Dy)((0,m.S)(e.error))),T(!1)}))})(e,t,s):((e,t)=>{i.F.buckets.deleteObjectRetention(d,{prefix:(0,c.nf)(e),version_id:t||""}).then((()=>{T(!1),n(!0)})).catch((e=>{u((0,O.Dy)((0,m.S)(e.error))),T(!1)}))})(e,t)},label:"Save"})]})]})})})};var ee=n(58661),te=n(25448);const ne=e=>{let{closeDeleteModalAndRefresh:t,deleteOpen:n,selectedBucket:a,selectedObject:i,versioningInfo:d,selectedVersion:u=""}=e;const h=(0,l.jL)(),[m,p]=(0,te.A)((()=>t(!0)),(e=>{h((0,O.C9)(e)),"Access Denied."===e.detailedError&&t(!0)})),[j,b]=(0,s.useState)(!1),[g,f]=(0,s.useState)(!1),v=(0,o.d4)((e=>e.objectBrowser.retentionConfig)),S=(0,_._)([a],[r.OV.S3_BYPASS_GOVERNANCE_RETENTION])&&"governance"===(null===v||void 0===v?void 0:v.mode);if(!i)return null;return(0,y.jsx)(ee.A,{title:"Delete Object",confirmText:"Delete",isOpen:n,titleIcon:(0,y.jsx)(x.xWY,{}),isLoading:m,onConfirm:()=>{const e=(0,c.x6)(i).endsWith("/");p("DELETE","/api/v1/buckets/".concat(a,"/objects?prefix=").concat(i).concat(""!==u?"&version_id=".concat(u):"&recursive=".concat(e,"&all_versions=").concat(j)).concat(g?"&bypass=true":""))},onClose:()=>t(!1),confirmationContent:(0,y.jsxs)(s.Fragment,{children:["Are you sure you want to delete: ",(0,y.jsx)("br",{}),(0,y.jsx)("b",{children:(0,c.x6)(i)})," ",""!==u?(0,y.jsxs)(s.Fragment,{children:[(0,y.jsx)("br",{}),(0,y.jsx)("br",{}),"Version ID:",(0,y.jsx)("br",{}),(0,y.jsx)("strong",{children:u})]}):"","? ",(0,y.jsx)("br",{}),(0,y.jsx)("br",{}),I(null===d||void 0===d?void 0:d.status)&&""===u&&(0,y.jsx)(s.Fragment,{children:(0,y.jsx)(x.dOG,{label:"Delete All Versions",indicatorLabels:["Yes","No"],checked:j,value:"delete_versions",id:"delete-versions",name:"delete-versions",onChange:e=>{b(!j)},description:""})}),S&&(j||""!==u)&&(0,y.jsx)(s.Fragment,{children:(0,y.jsx)("div",{style:{marginTop:10},children:(0,y.jsx)(x.dOG,{label:"Bypass Governance Mode",indicatorLabels:["Yes","No"],checked:g,value:"bypass_governance",id:"bypass_governance",name:"bypass_governance",onChange:e=>{f(!g)},description:""})})}),j&&(0,y.jsxs)(s.Fragment,{children:[(0,y.jsxs)("div",{style:{marginTop:10,border:"#c83b51 1px solid",borderRadius:3,padding:5,backgroundColor:"#c83b5120",color:"#c83b51"},children:["This will remove the object as well as all of its versions,"," ",(0,y.jsx)("br",{}),"This action is irreversible."]}),(0,y.jsx)("br",{}),"Are you sure you want to continue?"]})]})})},se=e=>{let{open:t,closeModalAndRefresh:n,objectName:o,bucketName:a,actualInfo:r}=e;const d=(0,l.jL)(),[u,p]=(0,s.useState)(!1),[j,b]=(0,s.useState)(!1),g=r.version_id;(0,s.useEffect)((()=>{const e=h()(r,"legal_hold_status","OFF");p("ON"===e)}),[r]);const f=()=>{p(!1)};return(0,y.jsx)(q.A,{title:"Set Legal Hold",modalOpen:t,onClose:()=>{f(),n(!1)},children:(0,y.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:e=>{(e=>{e.preventDefault(),b(!0),i.F.buckets.putObjectLegalHold(a,{prefix:(0,c.nf)(o),version_id:g||""},{status:u?K.SW.Enabled:K.SW.Disabled}).then((()=>{b(!1),n(!0)})).catch((e=>{d((0,O.Dy)((0,m.S)(e.error))),b(!1)}))})(e)},children:(0,y.jsxs)(x.Hbc,{withBorders:!1,containerPadding:!1,children:[(0,y.jsxs)(x.azJ,{className:"inputItem",children:[(0,y.jsx)("strong",{children:"Object"}),": ",a]}),(0,y.jsx)(x.dOG,{value:"legalhold",id:"legalhold",name:"legalhold",checked:u,onChange:e=>{p(!u)},label:"Legal Hold Status",indicatorLabels:["Enabled","Disabled"],tooltip:"To enable this feature you need to enable versioning on the bucket before creation"}),(0,y.jsxs)(x.xA9,{item:!0,xs:12,sx:W.Uz.modalButtonBar,children:[(0,y.jsx)(x.$nd,{id:"clear",type:"button",variant:"regular",onClick:f,label:"Clear"}),(0,y.jsx)(x.$nd,{id:"save",type:"submit",variant:"callAction",disabled:j,label:" Save"})]})]})})})},oe=f.Ay.b((e=>{let{theme:t}=e;return{color:h()(t,"signalColors.danger","#C83B51"),marginLeft:5}})),ae=e=>{var t;let{modalOpen:n,onCloseAndUpdate:a,bucketName:d,actualInfo:u}=e;const p=(0,l.jL)(),j=(0,o.d4)(O.Rq),[b,g]=(0,s.useState)(""),[f,v]=(0,s.useState)(""),[S,w]=(0,s.useState)(!1),[T,C]=(0,s.useState)(!1),[E,N]=(0,s.useState)(""),[A,I]=(0,s.useState)(""),k=(0,c.nf)(u.name||""),B=u.tags,F=Object.keys(B||{}),L=null===(t=u.name)||void 0===t?void 0:t.split("/"),V=(null===L||void 0===L?void 0:L.pop())||"",D=e=>(0,y.jsxs)(x.azJ,{sx:{fontSize:16,margin:"20px 0 30px",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",width:"100%"},children:["Tag",e?"s":""," for: ",(0,y.jsx)("strong",{children:V})]});return(0,y.jsx)(s.Fragment,{children:(0,y.jsx)(q.A,{modalOpen:n,title:T?"Delete Tag":"Edit Tags",onClose:()=>{a(!0)},iconColor:T?"delete":"default",titleIcon:T?(0,y.jsx)(x.aaC,{}):(0,y.jsx)(x.cGQ,{}),children:T?(0,y.jsx)(s.Fragment,{children:(0,y.jsxs)(x.xA9,{container:!0,children:[D(!1),"Are you sure you want to delete the tag"," ",(0,y.jsxs)(oe,{children:[E," : ",A]})," ","?",(0,y.jsxs)(x.xA9,{item:!0,xs:12,sx:W.Uz.modalButtonBar,children:[(0,y.jsx)(x.$nd,{id:"cancel",type:"button",variant:"regular",onClick:()=>{N(""),I(""),C(!1)},label:"Cancel"}),(0,y.jsx)(x.$nd,{type:"submit",variant:"secondary",onClick:()=>{const e={...B};delete e[E];const t=j?u.version_id||"":"null";i.F.buckets.putObjectTags(d,{prefix:k,version_id:t},{tags:e}).then((()=>{a(!0),w(!1)})).catch((e=>{p((0,O.Dy)((0,m.S)(e.error))),w(!1)}))},id:"deleteTag",label:"Delete Tag"})]})]})}):(0,y.jsxs)(x.azJ,{children:[(0,y.jsx)(_.R,{scopes:[r.OV.S3_GET_OBJECT_TAGGING,r.OV.S3_GET_ACTIONS],resource:d,children:(0,y.jsxs)(x.azJ,{sx:{display:"flex",flexFlow:"column",width:"100%"},children:[D(!0),(0,y.jsxs)(x.azJ,{sx:{fontSize:14,fontWeight:"normal"},children:["Current Tags:",(0,y.jsx)("br",{}),0===F.length?(0,y.jsx)("span",{className:"muted",children:"There are no tags for this object"}):(0,y.jsx)(s.Fragment,{}),(0,y.jsx)(x.azJ,{sx:{marginTop:"5px",marginBottom:"15px"},children:F.map(((e,t)=>{const n=h()(B,"".concat(e),"");return""!==n?(0,y.jsx)(_.R,{scopes:[r.OV.S3_DELETE_OBJECT_TAGGING],resource:d,errorProps:{deleteIcon:null,onDelete:null},children:(0,y.jsx)(x.vwO,{id:"".concat(e," : ").concat(n),label:"".concat(e," : ").concat(n),variant:"regular",color:"default",onDelete:()=>{((e,t)=>{N(e),I(t),C(!0)})(e,n)}})},"chip-".concat(t)):null}))})]})]})}),(0,y.jsx)(_.R,{scopes:[r.OV.S3_PUT_OBJECT_TAGGING,r.OV.S3_PUT_ACTIONS],resource:d,errorProps:{disabled:!0,onClick:null},children:(0,y.jsxs)(x.azJ,{children:[(0,y.jsx)(x._xt,{icon:(0,y.jsx)(x.b_$,{}),separator:!1,children:"Add New Tag"}),(0,y.jsxs)(x.Hbc,{containerPadding:!1,withBorders:!1,children:[(0,y.jsx)(x.cl_,{value:b,label:"Tag Key",id:"newTagKey",name:"newTagKey",placeholder:"Enter Tag Key",onChange:e=>{g(e.target.value)}}),(0,y.jsx)(x.cl_,{value:f,label:"Tag Label",id:"newTagLabel",name:"newTagLabel",placeholder:"Enter Tag Label",onChange:e=>{v(e.target.value)}}),(0,y.jsxs)(x.xA9,{item:!0,xs:12,sx:W.Uz.modalButtonBar,children:[(0,y.jsx)(x.$nd,{id:"clear",type:"button",variant:"regular",color:"primary",onClick:()=>{v(""),g("")},label:"Clear"}),(0,y.jsx)(x.$nd,{type:"submit",variant:"callAction",disabled:""===f.trim()||""===b.trim()||S,onClick:()=>{w(!0);const e={};e[b]=f;const t={...B,...e},n=j?u.version_id||"":"null";i.F.buckets.putObjectTags(d,{prefix:k,version_id:n},{tags:t}).then((()=>{a(!0),w(!1)})).catch((e=>{p((0,O.Dy)((0,m.S)(e.error))),w(!1)}))},id:"saveTag",label:"Save"})]})]})]})})]})})})};var ie=n(49501);const le=e=>{let{closeInspectModalAndRefresh:t,inspectOpen:n,inspectPath:o,volumeName:a}=e;const i=(0,l.jL)(),r=()=>t(!1),[d,u]=(0,s.useState)(!0),[h,m]=(0,s.useState)(""),[p,j]=(0,s.useState)("");if(!o)return null;return(0,y.jsxs)(s.Fragment,{children:[!h&&(0,y.jsx)(q.A,{modalOpen:n,titleIcon:(0,y.jsx)(x.nTF,{}),title:"Inspect Object",onClose:r,children:(0,y.jsxs)("form",{noValidate:!0,autoComplete:"off",onSubmit:e=>{(e=>{e.preventDefault()})(e)},children:["Would you like to encrypt ",(0,y.jsx)("b",{children:(0,c.x6)(o)}),"?"," ",(0,y.jsx)("br",{}),(0,y.jsx)(x.dOG,{label:"Encrypt",indicatorLabels:["Yes","No"],checked:d,value:"encrypt",id:"encrypt",name:"encrypt",onChange:e=>{u(!d)},description:""}),(0,y.jsx)(x.xA9,{item:!0,xs:12,sx:W.Uz.modalButtonBar,children:(0,y.jsx)(x.$nd,{id:"inspect",type:"submit",variant:"callAction",color:"primary",onClick:async()=>{const e=(0,c.nf)(o+"/xl.meta"),t=(0,c.nf)(a);let n=document.baseURI.replace(window.location.origin,"");(async e=>await fetch(e,{method:"GET"}))("".concat(window.location.origin).concat(n,"/api/v1/admin/inspect?volume=").concat(t,"&file=").concat(e,"&encrypt=").concat(d)).then((async e=>{if(!e.ok){const t=await e.json();i((0,O.C9)({errorMessage:t.message,detailedError:t.code}))}const t=await e.blob(),n=e.headers.get("content-disposition").split('"')[1],s=(0,c.UM)(n)||"";(0,c.OT)(t,n),j(n),""!==s?m(s):r()})).catch((e=>{i((0,O.C9)(e))}))},label:"Inspect"})})]})}),h?(0,y.jsxs)(q.A,{modalOpen:n,title:"Inspect Decryption Key",onClose:()=>{(0,c.Yj)(p),r(),m("")},titleIcon:(0,y.jsx)(x.aJN,{}),children:[(0,y.jsxs)(x.azJ,{children:["This will be displayed only once. It cannot be recovered.",(0,y.jsx)("br",{}),"Use secure medium to share this key."]}),(0,y.jsx)(x.azJ,{children:(0,y.jsx)(ie.A,{value:h})})]}):null]})},re=e=>{let{open:t,closeModal:n,currentItem:o,internalPaths:a,actualInfo:i,bucketName:r}=e;const c=(0,l.jL)(),[d,u]=(0,s.useState)(o),[h,m]=(0,s.useState)(!1);return(0,y.jsxs)(q.A,{title:"Rename Download",modalOpen:t,onClose:n,titleIcon:(0,y.jsx)(x.qUP,{}),children:[(0,y.jsxs)("div",{children:["The file you are trying to download has a long name.",(0,y.jsx)("br",{}),"This can cause issues on Windows Systems by trimming the file name after download.",(0,y.jsx)("br",{}),(0,y.jsx)("br",{})," We recommend to rename the file download"]}),(0,y.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:e=>{(e=>{e.preventDefault(),(0,P._)(c,r,a,i),n()})(e)},children:(0,y.jsxs)(x.Hbc,{withBorders:!1,containerPadding:!1,children:[(0,y.jsx)(x.cl_,{id:"download-filename",name:"download-filename",onChange:e=>{u(e.target.value)},label:"",type:"text",value:d,error:d.length>200&&!h?"Filename should be less than 200 characters long.":""}),(0,y.jsx)(x.dOG,{value:"acceptLongName",id:"acceptLongName",name:"acceptLongName",checked:h,onChange:e=>{m(e.target.checked),e.target.checked&&u(o)},label:"Use Original Name"}),(0,y.jsx)(x.xA9,{item:!0,xs:12,sx:W.Uz.modalButtonBar,children:(0,y.jsx)(x.$nd,{id:"download-file",type:"submit",variant:"callAction",color:"primary",disabled:d.length>200&&!h,label:"Download File"})})]})})]})},ce={is_latest:!0,last_modified:"",legal_hold_status:"",name:"",retention_mode:"",retention_until_date:"",size:0,tags:{},version_id:void 0},de=e=>{let{internalPaths:t,bucketName:n,versioningInfo:a,locking:u,onClosePanel:m}=e;const p=(0,l.jL)(),j=(0,o.d4)(O.Rq),b=(0,o.d4)((e=>e.objectBrowser.versionsMode)),g=(0,o.d4)((e=>e.objectBrowser.selectedVersion)),f=(0,o.d4)((e=>e.objectBrowser.loadingObjectInfo)),[v,S]=(0,s.useState)(!1),[w,T]=(0,s.useState)(!1),[C,E]=(0,s.useState)(!1),[N,I]=(0,s.useState)(!1),[k,B]=(0,s.useState)(!1),[F,V]=(0,s.useState)(null),[D,R]=(0,s.useState)([]),[U,K]=(0,s.useState)(null),[W,H]=(0,s.useState)([]),[Y,$]=(0,s.useState)(!1),[Z,q]=(0,s.useState)(!1),[Q,ee]=(0,s.useState)(0),[te,oe]=(0,s.useState)(!1),[ie,de]=(0,s.useState)(null),[ue,he]=(0,s.useState)(!1),xe=((0,c.x6)(t)||"").split("/").pop()||"";let me=[];F&&F.name&&(me=F.name.split("/")),(0,s.useEffect)((()=>{if(j&&D&&D.length>=1){let e=D.find((e=>e.is_latest))||ce;""!==g&&(e=D.find((e=>e.version_id===g))||ce),e.is_delete_marker||he(!0),V(e)}}),[g,j,D]),(0,s.useEffect)((()=>{f&&""!==t&&i.F.buckets.listObjects(n,{prefix:t,with_versions:j}).then((e=>{const t=e.data.objects||[];if(j){R(t),H(t);const e=t.reduce(((e,t)=>null!==t&&void 0!==t&&t.size?e+t.size:e),0);ee(e)}else{const e=t[0];V(e),H([]),e.is_delete_marker||he(!0)}p((0,d.oe)(!1))})).catch((e=>{console.error("Error loading object details",e.error),p((0,d.oe)(!1))}))}),[f,n,t,p,j,g]),(0,s.useEffect)((()=>{ue&&""!==t&&i.F.buckets.getObjectMetadata(n,{prefix:t,versionID:(null===F||void 0===F?void 0:F.version_id)||""}).then((e=>{let t=h()(e.data,"objectMetadata",{});de(t),he(!1)})).catch((e=>{console.error("Error Getting Metadata Status: ",e.detailedError),he(!1)}))}),[n,t,ue,null===F||void 0===F?void 0:F.version_id]);let pe=[];F&&F.tags&&(pe=Object.keys(F.tags));const je=(0,y.jsx)("div",{style:{textAlign:"center",marginTop:35},children:(0,y.jsx)(x.aHM,{})});if(!F)return f?je:null;const be=me.length>0?me[me.length-1]:F.name,ge=[n,xe,[n,F.name].join("/")],fe=(0,_._)(n,[r.OV.S3_PUT_OBJECT_LEGAL_HOLD,r.OV.S3_PUT_ACTIONS]),ve=(0,_._)(ge,[r.OV.S3_PUT_OBJECT_TAGGING,r.OV.S3_PUT_ACTIONS]),_e=(0,_._)(ge,[r.OV.S3_GET_OBJECT_RETENTION,r.OV.S3_PUT_OBJECT_RETENTION,r.OV.S3_GET_ACTIONS,r.OV.S3_PUT_ACTIONS],!0),Se=(0,_._)(ge,[r.OV.ADMIN_INSPECT_DATA]),Oe=(0,_._)(ge,[r.OV.S3_GET_BUCKET_VERSIONING,r.OV.S3_PUT_BUCKET_VERSIONING,r.OV.S3_GET_OBJECT_VERSION,r.OV.S3_GET_ACTIONS,r.OV.S3_PUT_ACTIONS]),we=(0,_._)(ge,[r.OV.S3_GET_OBJECT,r.OV.S3_GET_ACTIONS]),Te=(0,_._)([n,xe,[n,F.name].join("/")],[r.OV.S3_DELETE_OBJECT]);let ye=(0,A.IZ)(ie,xe);const Ce=[{action:()=>{(0,P._)(p,n,t,F)},label:"Download",disabled:!!F.is_delete_marker||!we,icon:(0,y.jsx)(x.s3U,{}),tooltip:we?"Download this Object":(0,r.vj)([r.OV.S3_GET_OBJECT,r.OV.S3_GET_ACTIONS],"download this object")},{action:()=>{S(!0)},label:"Share",disabled:!!F.is_delete_marker||!we,icon:(0,y.jsx)(x.liv,{}),tooltip:we?"Share this File":(0,r.vj)([r.OV.S3_GET_OBJECT,r.OV.S3_GET_ACTIONS],"share this object")},{action:()=>{q(!0)},label:"Preview",disabled:!!F.is_delete_marker||"none"===ye&&!we,icon:(0,y.jsx)(x.cyn,{}),tooltip:we?"Preview this File":(0,r.vj)([r.OV.S3_GET_OBJECT,r.OV.S3_GET_ACTIONS],"preview this object")},{action:()=>{I(!0)},label:"Legal Hold",disabled:!u||!j||!!F.is_delete_marker||!fe||""!==g,icon:(0,y.jsx)(x.ODz,{}),tooltip:fe?u?"Change Legal Hold rules for this File":"Object Locking must be enabled on this bucket in order to set Legal Hold":(0,r.vj)([r.OV.S3_PUT_OBJECT_LEGAL_HOLD,r.OV.S3_PUT_ACTIONS],"change legal hold settings for this object")},{action:()=>{T(!0)},label:"Retention",disabled:!j||!!F.is_delete_marker||!_e||""!==g||!u,icon:(0,y.jsx)(x.gn6,{}),tooltip:_e?u?"Change Retention rules for this File":"Object Locking must be enabled on this bucket in order to set Retention Rules":(0,r.vj)([r.OV.S3_GET_OBJECT_RETENTION,r.OV.S3_PUT_OBJECT_RETENTION,r.OV.S3_GET_ACTIONS,r.OV.S3_PUT_ACTIONS],"change Retention Rules for this object")},{action:()=>{E(!0)},label:"Tags",disabled:!!F.is_delete_marker||""!==g||!ve,icon:(0,y.jsx)(x.P3Z,{}),tooltip:ve?"Change Tags for this File":(0,r.vj)([r.OV.S3_PUT_OBJECT_TAGGING,r.OV.S3_GET_OBJECT_TAGGING,r.OV.S3_GET_ACTIONS,r.OV.S3_PUT_ACTIONS],"set Tags on this object")},{action:()=>{B(!0)},label:"Inspect",disabled:!j||!!F.is_delete_marker||""!==g||!Se,icon:(0,y.jsx)(x.nTF,{}),tooltip:Se?"Inspect this file":(0,r.vj)([r.OV.ADMIN_INSPECT_DATA],"inspect this file")},{action:()=>{p((0,d.cQ)({status:!b,objectName:be}))},label:b?"Hide Object Versions":"Display Object Versions",icon:(0,y.jsx)(x.j1U,{}),disabled:!j||!(F.version_id&&"null"!==F.version_id)||!Oe,tooltip:Oe?F.version_id&&"null"!==F.version_id?"Display Versions for this file":"":(0,r.vj)([r.OV.S3_GET_BUCKET_VERSIONING,r.OV.S3_PUT_BUCKET_VERSIONING,r.OV.S3_GET_OBJECT_VERSION,r.OV.S3_GET_ACTIONS,r.OV.S3_PUT_ACTIONS],"display all versions of this object")}];return(0,y.jsxs)(s.Fragment,{children:[v&&F&&(0,y.jsx)(J.default,{open:v,closeModalAndRefresh:()=>{K(null),S(!1)},bucketName:n,dataObject:U||F}),w&&F&&(0,y.jsx)(X,{open:w,closeModalAndRefresh:e=>{T(!1),e&&p((0,d.oe)(!0))},objectName:xe,objectInfo:F,bucketName:n}),Y&&(0,y.jsx)(ne,{deleteOpen:Y,selectedBucket:n,selectedObject:t,closeDeleteModalAndRefresh:e=>{$(!1),e&&""===g?m(!0):(p((0,d.SK)(!0)),p((0,d.Ai)("")),p((0,d.oe)(!0)))},versioningInfo:j?a:void 0,selectedVersion:g}),N&&F&&(0,y.jsx)(se,{open:N,closeModalAndRefresh:e=>{I(!1),e&&p((0,d.oe)(!0))},objectName:F.name||"",bucketName:n,actualInfo:F}),Z&&F&&(0,y.jsx)(G.default,{open:Z,bucketName:n,actualInfo:F,onClosePreview:()=>{q(!1)}}),C&&F&&(0,y.jsx)(ae,{modalOpen:C,bucketName:n,actualInfo:F,onCloseAndUpdate:e=>{E(!1),e&&p((0,d.oe)(!0))}}),k&&F&&(0,y.jsx)(le,{inspectOpen:k,volumeName:n,inspectPath:F.name||"",closeInspectModalAndRefresh:e=>{B(!1),e&&p((0,d.oe)(!0))}}),te&&F&&(0,y.jsx)(re,{open:te,closeModal:()=>{oe(!1)},currentItem:xe,bucketName:n,internalPaths:t,actualInfo:F}),f?(0,y.jsx)(s.Fragment,{children:je}):(0,y.jsxs)(x.azJ,{sx:{"& .ObjectDetailsTitle":{display:"flex",alignItems:"center","& .min-icon":{width:26,height:26,minWidth:26,minHeight:26}},"& .objectNameContainer":{whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden",alignItems:"center",marginLeft:10},"& .capitalizeFirst":{textTransform:"capitalize"},"& .detailContainer":{padding:"0 22px",marginBottom:10,fontSize:14}},children:[(0,y.jsx)(x.Smc,{title:(0,y.jsxs)("div",{className:"ObjectDetailsTitle",children:[z(be||"",!0),(0,y.jsx)("span",{className:"objectNameContainer",children:be})]}),items:Ce}),(0,y.jsx)(L.A,{tooltip:Te?"":(0,r.vj)([r.OV.S3_DELETE_OBJECT],"delete this object"),children:(0,y.jsx)(x.xA9,{item:!0,xs:12,sx:{justifyContent:"center",display:"flex"},children:(0,y.jsx)(_.R,{resource:[n,xe,[n,F.name].join("/")],scopes:[r.OV.S3_DELETE_OBJECT],errorProps:{disabled:!0},children:(0,y.jsx)(x.$nd,{id:"delete-element-click",icon:(0,y.jsx)(x.d7y,{}),iconLocation:"start",fullWidth:!0,variant:"secondary",onClick:()=>{$(!0)},disabled:""===g&&F.is_delete_marker,sx:{width:"calc(100% - 44px)",margin:"8px 0"},label:"Delete".concat(""!==g?" version":"")})})})}),(0,y.jsx)(x.kCK,{icon:(0,y.jsx)(x.Hch,{}),label:"Object Info"}),(0,y.jsxs)(x.azJ,{className:"detailContainer",children:[(0,y.jsx)("strong",{children:"Name:"}),(0,y.jsx)("br",{}),(0,y.jsx)("div",{style:{overflowWrap:"break-word"},children:be})]}),""!==g&&(0,y.jsxs)(x.azJ,{className:"detailContainer",children:[(0,y.jsx)("strong",{children:"Version ID:"}),(0,y.jsx)("br",{}),g]}),(0,y.jsxs)(x.azJ,{className:"detailContainer",children:[(0,y.jsx)("strong",{children:"Size:"}),(0,y.jsx)("br",{}),(0,c.nO)("".concat(F.size||"0"))]}),F.version_id&&"null"!==F.version_id&&""===g&&(0,y.jsxs)(x.azJ,{className:"detailContainer",children:[(0,y.jsx)("strong",{children:"Versions:"}),(0,y.jsx)("br",{}),W.length," version",1!==W.length?"s":"",","," ",(0,c.qO)(Q)]}),""===g&&(0,y.jsxs)(x.azJ,{className:"detailContainer",children:[(0,y.jsx)("strong",{children:"Last Modified:"}),(0,y.jsx)("br",{}),(e=>{const t=new Date,n=new Date(e),s=t.getTime()-n.getTime(),o=(0,c.eQ)(s,"ms");return""!==o.trim()?"".concat(o," ago"):"Just now"})(F.last_modified||"")]}),(0,y.jsxs)(x.azJ,{className:"detailContainer",children:[(0,y.jsx)("strong",{children:"ETAG:"}),(0,y.jsx)("br",{}),F.etag||"N/A"]}),(0,y.jsxs)(x.azJ,{className:"detailContainer",children:[(0,y.jsx)("strong",{children:"Tags:"}),(0,y.jsx)("br",{}),0===pe.length?"N/A":pe.map(((e,t)=>(0,y.jsxs)("span",{children:[e,":",h()(F,"tags.".concat(e),""),t{let{versionToRestore:t,bucketName:n,objectPath:o,restoreOpen:a,onCloseAndUpdate:r}=e;const u=(0,l.jL)(),[h,p]=(0,s.useState)(!1);return(0,y.jsx)(ee.A,{title:"Restore File Version",confirmText:"Restore",isOpen:a,isLoading:h,titleIcon:(0,y.jsx)(x.YkU,{}),onConfirm:()=>{p(!0),i.F.buckets.putObjectRestore(n,{prefix:(0,c.nf)(o),version_id:t.version_id||""}).then((()=>{p(!1),r(!0),u((0,d.NV)({prefix:o,objectInfo:t}))})).catch((e=>{u((0,O.C9)((0,m.S)(e.error))),p(!1)}))},confirmButtonProps:{variant:"secondary",disabled:h},onClose:()=>{r(!1)},confirmationContent:(0,y.jsxs)(x.azJ,{id:"alert-dialog-description",children:["Are you sure you want to restore ",(0,y.jsx)("br",{}),(0,y.jsx)("b",{children:o})," ",(0,y.jsx)("br",{})," with Version ID:",(0,y.jsx)("br",{}),(0,y.jsx)("b",{children:t.version_id}),"?"]})})},he=e=>{let{type:t}=e,n="#000",s="";switch(t){case"null":n="#07193E",s="NULL VERSION";break;case"deleted":n="#868686",s="DELETED";break;default:n="#174551",s="CURRENT VERSION"}return(0,y.jsx)("span",{style:{backgroundColor:n,padding:"0 5px",display:"inline-block",color:"#FFF",fontWeight:"bold",fontSize:12,borderRadius:2,whiteSpace:"nowrap",margin:"0 10px"},children:s})},xe=f.Ay.div((e=>{let{theme:t}=e;return{"&:before":{content:"' '",display:"block",position:"absolute",width:"2px",height:"calc(100% + 2px)",backgroundColor:h()(t,"borderColor","#F8F8F8"),left:"24px"},"& .mainFileVersionItem":{borderBottom:"".concat(h()(t,"borderColor","#F8F8F8")," 1px solid"),padding:"1rem 0",margin:"0 0.5rem 0 2.5rem",cursor:"pointer","&.deleted":{color:"#868686"}},"& .intermediateLayer":{margin:"0 1.5rem 0 1.5rem","&:hover, &.selected":{backgroundColor:h()(t,"boxBackground","#F8F8F8"),"& > div":{borderBottomColor:h()(t,"boxBackground","#F8F8F8")}}},"& .versionContainer":{fontSize:16,fontWeight:"bold",display:"flex",alignItems:"center","& svg.min-icon":{width:18,height:18,minWidth:18,minHeight:18,marginRight:10}},"& .buttonContainer":{textAlign:"right","& button":{marginLeft:"1.5rem"}},"& .versionID":{fontSize:"12px",margin:"2px 0",whiteSpace:"nowrap",textOverflow:"ellipsis",maxWidth:"95%",overflow:"hidden"},"& .versionData":{marginRight:"10px",fontSize:12,color:"#868686"},"@media (max-width: 600px)":{"& .buttonContainer":{"& button":{marginLeft:"5px"}}},"@media (max-width: 799px)":{"&:before":{display:"none"},"& .mainFileVersionItem":{padding:"5px 0px",margin:0},"& .intermediateLayer":{margin:0,"&:hover, &.selected":{backgroundColor:"transparent","& > div":{borderBottomColor:h()(t,"boxBackground","#F8F8F8")}}},"& .versionContainer":{fontSize:14,"& svg.min-icon":{display:"none"}},"& .versionData":{textOverflow:"ellipsis",maxWidth:"95%",overflow:"hidden",whiteSpace:"nowrap"},"& .collapsableInfo":{display:"flex",flexDirection:"column"},"& .versionItem":{display:"none"}}}})),me=e=>{let{fileName:t,versionInfo:n,isSelected:s,checkable:o,isChecked:a,onCheck:i,onShare:l,onDownload:r,onRestore:d,onPreview:u,globalClick:h,index:m,key:p,style:b}=e;const g=n.is_delete_marker,f=[{icon:(0,y.jsx)(x.cyn,{}),action:u,tooltip:"Preview"},{icon:(0,y.jsx)(x.s3U,{}),action:r,tooltip:"Download this version"},{icon:(0,y.jsx)(x.liv,{}),action:l,tooltip:"Share this version"},{icon:(0,y.jsx)(x.YkU,{}),action:d,tooltip:"Restore this version"}];let v=null;n.is_delete_marker?v="deleted":n.is_latest?v="current":"null"===n.version_id&&(v="null");let _=j.c9.now();return n.last_modified&&(_=j.c9.fromISO(n.last_modified)),(0,y.jsx)(xe,{children:(0,y.jsx)(x.xA9,{container:!0,className:"ctrItem",onClick:()=>{h(n)},style:b,children:(0,y.jsx)(x.xA9,{item:!0,xs:12,className:"intermediateLayer".concat(" ",s?"selected":""),children:(0,y.jsxs)(x.xA9,{item:!0,xs:!0,className:"mainFileVersionItem ".concat(n.is_delete_marker?"deleted":""),children:[(0,y.jsx)(x.xA9,{item:!0,xs:12,children:(0,y.jsxs)(x.xA9,{container:!0,children:[(0,y.jsxs)(x.xA9,{item:!0,xs:!0,md:4,className:"versionContainer",children:[o&&(0,y.jsx)(x.Sc0,{checked:a,id:"select-".concat(n.version_id),name:"select-".concat(n.version_id),onChange:e=>{e.stopPropagation(),i(n.version_id||"")},value:n.version_id||"",disabled:n.is_delete_marker,sx:{width:"initial"}}),z(t,!0)," v",m.toString(),(0,y.jsx)("span",{className:"versionItem",children:v&&(0,y.jsx)(he,{type:v})})]}),(0,y.jsx)(x.xA9,{item:!0,xs:10,md:8,className:"buttonContainer",children:f.map(((e,t)=>(0,y.jsx)(x.m_M,{tooltip:e.tooltip,children:(0,y.jsx)(x.K0,{size:"small",id:"version-action-".concat(e.tooltip,"-").concat(t.toString()),className:"spacing".concat(" ",g?"buttonDisabled":""),disabled:g,onClick:t=>{t.stopPropagation(),g?t.preventDefault():e.action(n)},sx:{backgroundColor:"#F8F8F8",borderRadius:"100%",width:"28px",height:"28px",padding:"5px","& .min-icon":{width:"14px",height:"14px"}},children:e.icon})},"version-action-".concat(e.tooltip,"-").concat(t.toString()))))})]})}),(0,y.jsx)(x.xA9,{item:!0,xs:12,className:"versionID",children:"null"!==n.version_id?n.version_id:"-"}),(0,y.jsxs)(x.xA9,{item:!0,xs:12,className:"collapsableInfo",children:[(0,y.jsxs)("span",{className:"versionData",children:[(0,y.jsx)("strong",{children:"Last modified:"})," ",_.toFormat("ccc, LLL dd yyyy HH:mm:ss (ZZZZ)")]}),(0,y.jsxs)("span",{className:"versionData",children:[(0,y.jsx)("strong",{children:"Size:"})," ",(0,c.nO)("".concat(n.size||"0"))]})]})]})})},p)})},pe=e=>{let{closeDeleteModalAndRefresh:t,deleteOpen:n,selectedBucket:a,selectedObject:d}=e;const u=(0,l.jL)(),[h,p]=(0,s.useState)(!1),[j,b]=(0,s.useState)(""),[g,f]=(0,s.useState)(!1),v=(0,o.d4)((e=>e.objectBrowser.retentionConfig)),S=(0,_._)([a],[r.OV.S3_BYPASS_GOVERNANCE_RETENTION])&&"governance"===(null===v||void 0===v?void 0:v.mode);if((0,s.useEffect)((()=>{h&&i.F.buckets.deleteObject(a,{prefix:d,non_current_versions:!0,bypass:g}).then((()=>{t(!0)})).catch((e=>{u((0,O.C9)((0,m.S)(e.error))),p(!1)}))}),[h,t,u,d,a,g]),!d)return null;return(0,y.jsx)(ee.A,{title:"Delete Non-Current versions",confirmText:"Delete",isOpen:n,titleIcon:(0,y.jsx)(x.xWY,{}),isLoading:h,onConfirm:()=>{p(!0)},onClose:()=>t(!1),confirmButtonProps:{disabled:"YES, PROCEED"!==j||h},confirmationContent:(0,y.jsxs)(s.Fragment,{children:["Are you sure you want to delete all the non-current versions for:"," ",(0,y.jsx)("b",{children:(0,c.x6)(d)}),"? ",(0,y.jsx)("br",{}),S&&(0,y.jsx)(s.Fragment,{children:(0,y.jsx)("div",{style:{marginTop:10},children:(0,y.jsx)(x.dOG,{label:"Bypass Governance Mode",indicatorLabels:["Yes","No"],checked:g,value:"bypass_governance",id:"bypass_governance",name:"bypass_governance",onChange:e=>{f(!g)},description:""})})}),(0,y.jsx)("br",{}),"To continue please type ",(0,y.jsx)("b",{children:"YES, PROCEED"})," in the box.",(0,y.jsx)("br",{}),(0,y.jsx)("br",{}),(0,y.jsx)(x.xA9,{item:!0,xs:12,children:(0,y.jsx)(x.cl_,{id:"type-confirm",name:"retype-tenant",onChange:e=>{b(e.target.value)},label:"",value:j})})]})})},je=e=>{let{closeDeleteModalAndRefresh:t,deleteOpen:n,selectedBucket:a,selectedVersions:c,selectedObject:d}=e;const u=(0,l.jL)(),[h,p]=(0,s.useState)(!1),[j,b]=(0,s.useState)(!1),g=(0,o.d4)((e=>e.objectBrowser.retentionConfig)),f=(0,_._)([a],[r.OV.S3_BYPASS_GOVERNANCE_RETENTION])&&"governance"===(null===g||void 0===g?void 0:g.mode);return(0,s.useEffect)((()=>{if(h){const e=c.map((e=>({path:d,versionID:e,recursive:!1})));e.length>0&&i.F.buckets.deleteMultipleObjects(a,e,{all_versions:!1,bypass:j}).then((()=>{p(!1),t(!0)})).catch((e=>{u((0,O.C9)((0,m.S)(e.error))),p(!1)}))}}),[h,t,a,d,c,j,u]),c?(0,y.jsx)(ee.A,{title:"Delete Selected Versions",confirmText:"Delete",isOpen:n,titleIcon:(0,y.jsx)(x.xWY,{}),isLoading:h,onConfirm:()=>{p(!0)},onClose:()=>t(!1),confirmationContent:(0,y.jsxs)(s.Fragment,{children:["Are you sure you want to delete the selected ",c.length," ","versions for ",(0,y.jsx)("strong",{children:d}),"?",f&&(0,y.jsx)(s.Fragment,{children:(0,y.jsx)("div",{style:{marginTop:10},children:(0,y.jsx)(x.dOG,{label:"Bypass Governance Mode",indicatorLabels:["Yes","No"],checked:j,value:"bypass_governance",id:"bypass_governance",name:"bypass_governance",onChange:e=>{b(!j)},description:""})})})]})}):null};var be=n(95098);const ge={is_latest:!0,last_modified:"",legal_hold_status:"",name:"",retention_mode:"",retention_until_date:"",size:0,tags:{},version_id:void 0},fe=e=>{let{internalPaths:t,bucketName:n}=e;const a=(0,l.jL)(),r=(0,o.d4)((e=>e.objectBrowser.searchVersions)),u=(0,o.d4)((e=>e.objectBrowser.loadingVersions)),p=(0,o.d4)((e=>e.objectBrowser.selectedVersion)),j=(0,o.d4)(O.Rq),[b,g]=(0,s.useState)(!1),[f,v]=(0,s.useState)(null),[_,S]=(0,s.useState)(null),[w,T]=(0,s.useState)([]),[C,E]=(0,s.useState)(!1),[A,I]=(0,s.useState)(null),[k,B]=(0,s.useState)("date"),[F,V]=(0,s.useState)(!1),[D,R]=(0,s.useState)(!1),[U,z]=(0,s.useState)(!1),[M,K]=(0,s.useState)([]),[W,H]=(0,s.useState)(!1);let Y=[];f&&f.name&&(Y=f.name.split("/")),(0,s.useEffect)((()=>{u||f||a((0,d.SK)(!0))}),[u,f,a]),(0,s.useEffect)((()=>{u&&""!==t&&i.F.buckets.listObjects(n,{prefix:t,with_versions:j}).then((e=>{const n=h()(e.data,"objects",[]),s=(0,c.x6)(t),o=n.filter((e=>e.name===s));j?(v(o.find((e=>e.is_latest))||ge),T(o)):(v(o[0]),T([])),a((0,d.SK)(!1))})).catch((e=>{a((0,O.C9)((0,m.S)(e.error))),a((0,d.SK)(!1))}))}),[u,n,t,a,j]);const $=e=>{S(e),g(!0)},Z=e=>{S(e),V(!0)},q=e=>{I(e),E(!0)},Q=e=>{(0,P._)(a,n,t,e)},X=e=>{a((0,d.Ai)(e.version_id||""))},ee=w.filter((e=>!!e.version_id&&e.version_id.includes(r))),te=w.reduce(((e,t)=>t.size?e+t.size:e),0);ee.sort(((e,t)=>{if("size"===k)return e.size&&t.size?e.sizet.size?1:0:0;{const n=new Date(e.last_modified||"").getTime(),s=new Date(t.last_modified||"").getTime();return ns?-1:0}}));const ne=e=>{if(M.includes(e)){const t=M.filter((t=>t!==e));return void K(t)}const t=[...M];t.push(e),K(t)};return(0,y.jsxs)(s.Fragment,{children:[b&&f&&(0,y.jsx)(J.default,{open:b,closeModalAndRefresh:()=>{S(null),g(!1),V(!1)},bucketName:n,dataObject:_||f}),C&&f&&A&&(0,y.jsx)(ue,{restoreOpen:C,bucketName:n,versionToRestore:A,objectPath:f.name||"",onCloseAndUpdate:e=>{E(!1),I(null),e&&(a((0,d.SK)(!0)),a((0,d.oe)(!0)))}}),F&&f&&(0,y.jsx)(G.default,{open:F,bucketName:n,actualInfo:{name:f.name||"",version_id:_&&_.version_id?_.version_id:"null",size:_&&_.size?_.size:0,content_type:"",last_modified:f.last_modified||""},onClosePreview:()=>{V(!1)}}),D&&(0,y.jsx)(pe,{deleteOpen:D,closeDeleteModalAndRefresh:e=>{R(!1),e&&(a((0,d.SK)(!0)),a((0,d.Ai)("")),a((0,d.oe)(!0)))},selectedBucket:n,selectedObject:t}),W&&(0,y.jsx)(je,{selectedBucket:n,selectedObject:(0,c.x6)(t),deleteOpen:W,selectedVersions:M,closeDeleteModalAndRefresh:e=>{H(!1),e&&(a((0,d.SK)(!0)),a((0,d.Ai)("")),a((0,d.oe)(!0)),K([]))}}),(0,y.jsxs)(x.xA9,{container:!0,sx:{width:"100%",padding:10,"@media (max-width: 799px)":{minHeight:800}},children:[!f&&(0,y.jsx)(x.xA9,{item:!0,xs:12,children:(0,y.jsx)(x.z21,{})}),f&&(0,y.jsxs)(s.Fragment,{children:[(0,y.jsx)(x.xA9,{item:!0,xs:12,children:(0,y.jsx)(N,{bucketName:n,internalPaths:(0,c.x6)(t),hidePathButton:!0})}),(0,y.jsx)(x.xA9,{item:!0,xs:12,sx:{position:"relative","& .detailsSpacer":{marginRight:18,"@media (max-width: 600px)":{marginRight:0}},["@media (max-width: ".concat(x.nmC.md,"px)")]:{"&::before":{display:"none"}}},children:(0,y.jsx)(x.lcx,{icon:(0,y.jsx)("span",{style:{display:"block",marginTop:"-10px"},children:(0,y.jsx)(x.j1U,{style:{width:20,height:20}})}),title:"".concat(Y.length>0?Y[Y.length-1]:f.name," Versions"),subTitle:(0,y.jsxs)(s.Fragment,{children:[(0,y.jsx)("span",{className:"detailsSpacer",children:(0,y.jsxs)("strong",{children:[w.length," Version",1===w.length?"":"s","\xa0\xa0\xa0"]})}),(0,y.jsx)("span",{className:"detailsSpacer",children:(0,y.jsx)("strong",{children:(0,c.qO)(te)})})]}),actions:(0,y.jsxs)(s.Fragment,{children:[(0,y.jsx)(L.A,{tooltip:"Select Multiple Versions",children:(0,y.jsx)(x.$nd,{id:"select-multiple-versions",onClick:()=>{z(!U)},icon:(0,y.jsx)(x.IN,{}),variant:U?"callAction":"regular",style:{marginRight:8}})}),U&&(0,y.jsx)(L.A,{tooltip:"Delete Selected Versions",children:(0,y.jsx)(x.$nd,{id:"delete-multiple-versions",onClick:()=>{H(!0)},icon:(0,y.jsx)(x.d7y,{}),variant:"secondary",style:{marginRight:8},disabled:0===M.length})}),(0,y.jsx)(L.A,{tooltip:"Delete Non Current Versions",children:(0,y.jsx)(x.$nd,{id:"delete-non-current",onClick:()=>{R(!0)},icon:(0,y.jsx)(x.rgY,{}),variant:"secondary",style:{marginRight:15},disabled:w.length<=1})}),(0,y.jsx)(x.l6P,{id:"sort-by",options:[{label:"Date",value:"date"},{label:"Size",value:"size"}],value:k,label:"Sort by",onChange:e=>{B(e)},noLabelMinWidth:!0})]}),bottomBorder:!1})}),(0,y.jsx)(x.xA9,{item:!0,xs:12,sx:{flexGrow:1,height:"calc(100% - 120px)",overflow:"auto",["@media (max-width: ".concat(x.nmC.md,"px)")]:{height:600}},children:f.version_id&&"null"!==f.version_id&&(0,y.jsx)(be.B8,{style:{width:"100%"},containerStyle:{width:"100%",maxWidth:"100%"},width:1,height:800,rowCount:ee.length,rowHeight:108,rowRenderer:e=>{let{key:t,index:n,isScrolling:s,isVisible:o,style:a}=e;const i=w.length-n;return(0,y.jsx)(me,{style:a,fileName:(null===f||void 0===f?void 0:f.name)||"",versionInfo:ee[n],index:i,onDownload:Q,onRestore:q,onShare:$,onPreview:Z,globalClick:X,isSelected:p===ee[n].version_id,checkable:U,onCheck:ne,isChecked:M.includes(ee[n].version_id||"")},t)}})})]})]})]})},ve=e=>{if(e.name.endsWith("/"))return"";const t=j.c9.now(),n=j.c9.fromISO(e.last_modified);return t.hasSame(n,"day")&&t.hasSame(n,"month")&&t.hasSame(n,"year")?"Today, ".concat(n.toFormat("HH:mm")):n.toFormat("ccc, LLL dd yyyy HH:mm (ZZZZ)")},_e=e=>e.name.endsWith("/")||!e.size?"-":(0,c.nO)(String(e.size)),Se=[{label:"Name",elementKey:"name",renderFunction:z,enableSort:!0},{label:"Last Modified",elementKey:"last_modified",renderFunction:ve,renderFullObject:!0,enableSort:!0},{label:"Size",elementKey:"size",renderFunction:_e,renderFullObject:!0,width:100,enableSort:!0}],Oe=[{label:"Name",elementKey:"name",renderFunction:z,enableSort:!0},{label:"Object Date",elementKey:"last_modified",renderFunction:ve,renderFullObject:!0,enableSort:!0},{label:"Size",elementKey:"size",renderFunction:_e,renderFullObject:!0,width:100,enableSort:!0},{label:"Deleted",elementKey:"delete_flag",renderFunction:e=>e?"Yes":"No",width:60}];var we=n(46537);const Te=()=>{const e=(0,l.jL)(),t=(0,a.g)(),n=(0,a.Zp)(),[i,u]=(0,s.useState)("ASC"),[m,p]=(0,s.useState)("name"),j=t.bucketName||"",b=(0,o.d4)((e=>e.objectBrowser.objectDetailsOpen)),g=(0,o.d4)((e=>e.objectBrowser.requestInProgress)),f=(0,o.d4)(we.s$),v=!(null===f||void 0===f||!f.includes("object-browser-only")),S=(0,o.d4)((e=>e.objectBrowser.rewind.rewindEnabled)),O=(0,o.d4)((e=>e.objectBrowser.records)),w=(0,o.d4)((e=>e.objectBrowser.searchObjects)),T=(0,o.d4)((e=>e.objectBrowser.selectedObjects)),C=(0,o.d4)((e=>e.objectBrowser.connectionError)),E=(0,o.d4)((e=>e.system.anonymousMode)),N=(0,_._)(j,[r.OV.S3_LIST_BUCKET,r.OV.S3_ALL_LIST_BUCKET]),I=O.filter((e=>{if(""===w)return!0;return e.name.toLowerCase().indexOf(w.toLowerCase())>=0})).sort((0,A.$w)(m));let k=[];k="ASC"===i?I:I.reverse();const B=[{type:"view",tooltip:"View",onClick:t=>{var s;const o=t.name||"",a="/browser/".concat(j).concat(o?"/".concat((0,c.nf)(o)):"");!E||null!==(s=t.name)&&void 0!==s&&s.endsWith("/")?(e((0,d.KX)([])),n(a),E||(e((0,d.TO)(!0)),e((0,d.SK)(!0))),e((0,d.A7)("".concat(o?"".concat((0,c.nf)(o)):"")))):(0,P._)(e,j,"".concat((0,c.nf)(o)),t)},sendOnlyId:!1}];let F=N||E?"This location is empty".concat(S?"":", please try uploading a new file"):(0,r.vj)([r.OV.S3_LIST_BUCKET,r.OV.S3_ALL_LIST_BUCKET],"view Objects in this bucket");C&&(F="Objects List unavailable. Please review your WebSockets configuration and try again");let L="calc(100vh - 290px)";return v&&(L="calc(100vh - 315px)"),(0,y.jsx)(x.bQt,{itemActions:B,columns:S?Oe:Se,isLoading:g,entityName:"Objects",idField:"name",records:k,customPaperHeight:L,selectedItems:T,onSelect:E?void 0:t=>{const n=t.target,s=n.value,o=n.checked;let a=[...T];return o?a.push(s):a=a.filter((e=>e!==s)),e((0,d.KX)(a)),e((0,d.A7)(null)),a},customEmptyMessage:F,sortEnabled:{currentSort:m,currentDirection:i,onSortClick:t=>{const n=h()(t,"sortDirection","DESC");p(t.sortBy),u(n),e((0,d.Yw)(!0))}},onSelectAll:()=>{if(e((0,d.A7)(null)),T.length===k.length)return void e((0,d.KX)([]));const t=k.map((e=>e.name));e((0,d.KX)(t))},rowStyle:e=>{var t;let{index:n}=e;return null!==(t=k[n])&&void 0!==t&&t.delete_flag?"deleted":""},sx:{minHeight:b?"100%":"initial"},noBackground:!0})};var ye=n(64681);const Ce=()=>{const e=(0,l.jL)(),t=(0,o.d4)((e=>e.objectBrowser.searchObjects));return(0,y.jsx)(ye.A,{placeholder:"Start typing to filter objects in the bucket",onChange:t=>{e((0,d.$X)(t))},value:t})};var Ee=n(30614);const Ne=(0,S.A)(s.lazy((()=>n.e(5941).then(n.bind(n,65941))))),Ae=(0,S.A)(s.lazy((()=>Promise.resolve().then(n.bind(n,30718))))),Ie=(0,S.A)(s.lazy((()=>n.e(2704).then(n.bind(n,32704))))),ke=(0,S.A)(s.lazy((()=>Promise.resolve().then(n.bind(n,37524))))),Be={borderWidth:2,borderRadius:2,borderColor:"transparent",outline:"none"},Fe={borderStyle:"dashed",backgroundColor:"transparent",borderColor:"#2196f3"},Le={borderStyle:"dashed",backgroundColor:"transparent",borderColor:"#00e676"},Ve=()=>{var e;const t=(0,l.jL)(),n=(0,a.g)(),u=(0,a.Zp)(),b=(0,a.zy)(),g=(0,o.d4)((e=>e.objectBrowser.rewind.rewindEnabled)),f=(0,o.d4)((e=>e.objectBrowser.rewind.bucketToRewind)),v=(0,o.d4)((e=>e.objectBrowser.versionsMode)),S=(0,o.d4)((e=>e.objectBrowser.showDeleted)),C=(0,o.d4)((e=>e.objectBrowser.objectDetailsOpen)),E=(0,o.d4)((e=>e.objectBrowser.selectedInternalPaths)),P=(0,o.d4)((e=>e.objectBrowser.requestInProgress)),R=(0,o.d4)((e=>e.objectBrowser.simplePath)),U=(0,o.d4)((e=>e.objectBrowser.versionInfo)),z=(0,o.d4)((e=>e.objectBrowser.lockingEnabled)),G=(0,o.d4)((e=>e.objectBrowser.downloadRenameModal)),M=(0,o.d4)((e=>e.objectBrowser.selectedPreview)),J=(0,o.d4)((e=>e.objectBrowser.shareFileModalOpen)),K=(0,o.d4)((e=>e.objectBrowser.previewOpen)),W=(0,o.d4)((e=>e.objectBrowser.selectedBucket)),H=(0,o.d4)((e=>e.system.anonymousMode)),Y=(0,o.d4)((e=>e.objectBrowser.anonymousAccessOpen)),$=(0,o.d4)((e=>{var t;return(null===(t=e.objectBrowser)||void 0===t?void 0:t.records)||[]})),Z=(0,o.d4)(B.Nx),q=(0,o.d4)(B.fT),[Q,X]=(0,s.useState)(!1),[ee,te]=(0,s.useState)(!1),[ne,se]=(0,s.useState)(!1),[oe,ae]=(0,s.useState)(!1),[ie,le]=(0,s.useState)(!1),[ce,ue]=(0,s.useState)(null),[he,xe]=(0,s.useState)(null),[me,pe]=(0,s.useState)(!1),je=I(U.status),be=n.bucketName||"",ge=b.pathname.split("/browser/".concat(be,"/")),ve=2===ge.length?ge[1]:"",_e=(0,c.x6)(ve),Se=_e.split("/").filter((e=>""!==e));let Oe=[be];Se.length>0&&(Oe=Oe.concat(Se));const we=(0,s.useRef)(null),ye=(0,s.useRef)(null),Ve=(0,o.d4)((e=>e.console.session&&e.console.session.permissions||{})),De=[r.OV.S3_PUT_OBJECT,r.OV.S3_PUT_ACTIONS],Pe=Oe.join("/"),Re=function(e,t){const n=T(e,t,arguments.length>2&&void 0!==arguments[2]?arguments[2]:[]).reduce(((e,t)=>{const n=w(t);return n&&e.push(".".concat(n)),e}),[]);return[...new Set(n)].join(",")}(Ve,Pe,De),Ue=T(Ve,Pe,De),ze=(0,_._)([Pe,...Ue],[r.OV.S3_GET_OBJECT,r.OV.S3_GET_ACTIONS]),Ge=(0,_._)(be,[r.OV.S3_GET_OBJECT,r.OV.S3_GET_ACTIONS,r.OV.S3_GET_BUCKET_VERSIONING]),Me=(0,_._)([Pe,...Ue],[r.OV.S3_DELETE_OBJECT]),Je=(0,_._)([Pe,...Ue],De)||H,Ke=(0,_._)(be,[r.OV.S3_GET_BUCKET_POLICY,r.OV.S3_PUT_BUCKET_POLICY,r.OV.S3_GET_ACTIONS,r.OV.S3_PUT_ACTIONS]),We=(0,o.d4)((e=>e.objectBrowser.selectedObjects)),He=(()=>{let e=!1;if(1===We.length){e=!!$.find((e=>e.name==="".concat(We[0])&&e.delete_flag))}return e})(),Ye=(0,s.useCallback)((()=>{const e=We[0],t=(0,c.nf)(e);!me&&t&&i.F.buckets.getObjectMetadata(be,{prefix:t}).then((e=>{let t=h()(e.data,"objectMetadata",{});pe(!0),xe(t)})).catch((e=>{console.error("Error Getting Metadata Status: ",e,null===e||void 0===e?void 0:e.detailedError),pe(!0)}))}),[be,We,me]);(0,s.useEffect)((()=>{be&&!He&&Ye()}),[be,We,Ye,He]),(0,s.useEffect)((()=>{g&&f!==be&&t((0,d.rS)())}),[g,f,be,t]),(0,s.useEffect)((()=>{null!==ye.current&&(ye.current.setAttribute("directory",""),ye.current.setAttribute("webkitdirectory",""))}),[ye]),(0,s.useEffect)((()=>{if(1===We.length){const e=We[0],t=e.endsWith("/");let n=(0,A.IZ)(he,e);le(!("none"===n||!ze)),ae(!(!ze||t))}else ae(!1),le(!1)}),[We,ze,he]),(0,s.useEffect)((()=>{ce||H||i.F.buckets.getBucketQuota(be).then((e=>{let t=null;e.data.quota&&(t=e.data),ue(t)})).catch((e=>{console.error("Error Getting Quota Status: ",e.error.detailedMessage),ue(null)}))}),[ce,be,H]),(0,s.useEffect)((()=>{We.length>0?t((0,d.TO)(!0)):0!==We.length||null!==E||P||t((0,d.TO)(!1))}),[We,E,t,P]),(0,s.useEffect)((()=>{ne||(t((0,B.ZU)(!0)),se(!0))}),[ne,t,se]),(0,s.useEffect)((()=>{!P&&!Z||H||i.F.buckets.bucketInfo(be).then((e=>{t((0,B.ZU)(!1)),t((0,B.$T)(e.data))})).catch((e=>{t((0,B.ZU)(!1)),t((0,O.C9)((0,m.S)(e)))}))}),[be,Z,t,H,P]),(0,s.useEffect)((()=>{""!==W&&i.F.buckets.getBucketRetentionConfig(W).then((e=>{t((0,d.PJ)(e.data))})).catch((()=>{t((0,d.PJ)(null))}))}),[W,t]);const $e=e=>{if(null!==e&&void 0!==e&&null!==e.target.files&&void 0!==e.target.files){e.preventDefault();var t=[];for(let n=0;n{let s="";R&&(s=R.endsWith("/")?R:R+"/");((e,n,s,o)=>{let a=a=>new Promise(((i,l)=>{let r="api/v1/buckets/".concat(n,"/objects/upload");const u=a.name,x=new Blob([a],{type:a.type});let m="";const p=h()(a,"path",""),j=h()(a,"webkitRelativePath","");let b=o;const g=(0,k.E0)(8);""!==p?b=p:""!==j&&(b=j);let f="";if(""!==s||""!==b){const e=b.split("/").slice(0,-1).join("/"),t=s.endsWith("/")?s.slice(0,-1):s;f="".concat(t).concat(t.endsWith("/")||""===e||e.startsWith("/")?"":"/").concat(e).concat(!e.endsWith("/")||""===e.trim()&&!s.endsWith("/")?"/":"")}r=""!==f?"".concat(r,"?prefix=").concat((0,c.nf)(f+u)):"".concat(r,"?prefix=").concat((0,c.nf)(u)),m=(0,c.nf)(f);const v=(0,c.nf)("".concat(n,"-").concat(m,"-").concat((new Date).getTime(),"-").concat(Math.random()));let _=new XMLHttpRequest;_.open("POST",r,!0),H&&_.setRequestHeader("X-Anonymous","1");const S=e.length>1;let O="An error occurred while uploading the file".concat(S?"s":"",".");const w={413:"Error - File size too large"};_.withCredentials=!1,_.onload=function(){if(_.status>=200&&_.status<300)t((0,d.rx)(v)),i({status:_.status}),(0,k.vy)(g);else{if(w[_.status])O=w[_.status];else if(_.response)try{const e=JSON.parse(_.response);O=e.detailedMessage}catch(e){O="something went wrong"}t((0,d.iL)({instanceID:v,msg:O})),l({status:_.status,message:O}),(0,k.vy)(g)}},_.upload.addEventListener("error",(()=>{l(O),t((0,d.iL)({instanceID:v,msg:"A network error occurred."}))})),_.upload.addEventListener("progress",(e=>{const n=Math.floor(100*e.loaded/e.total);t((0,d.DW)({instanceID:v,progress:n}))})),_.onerror=()=>{l(O),t((0,d.iL)({instanceID:v,msg:"A network error occurred."}))},_.onloadend=()=>{0===e.length&&t((0,d.Yw)(!0))},_.onabort=()=>{t((0,d.Dm)(v))};const T=new FormData;void 0!==a.size&&(T.append(a.size.toString(),x,u),(0,k.FP)(g,_),t((0,d.cP)({ID:g,bucketName:n,done:!1,instanceID:v,percentage:0,prefix:"".concat((0,c.x6)(m)).concat(u),type:"upload",waitingForFile:!1,failed:!1,cancelled:!1,errorMessage:""})),(0,k.vx)(g,T))}));const i=[];t((0,d.Nu)());for(let t=0;t{const n=e.filter((e=>"rejected"===e.status));if(n.length>0){const e=i.length,s=i.length-n.length,o={errorMessage:"There were some errors during file upload",detailedError:"Uploaded files ".concat(s,"/").concat(e)};t((0,O.C9)(o))}t((0,d.Yw)(!0))}))})(e,be,s,n)}),[be,t,R,H]),qe=(0,s.useCallback)((e=>{if(e&&e.length>0&&Je){let n=e[0].path,s=e;Re.length>0&&(s=e.filter((e=>{const t=w(e.name);return Re.includes(t)}))),s.length?(Ze(s,n),console.log("".concat(s.length," Allowed Files Processed out of ").concat(e.length,"."),Pe,...Ue),s.length!==e.length&&t((0,O.C9)({errorMessage:"Upload is restricted.",detailedError:(0,r.vj)([r.OV.S3_PUT_OBJECT,r.OV.S3_PUT_ACTIONS],"upload objects to this location")}))):(t((0,O.C9)({errorMessage:"Could not process drag and drop.",detailedError:(0,r.vj)([r.OV.S3_PUT_OBJECT,r.OV.S3_PUT_ACTIONS],"upload objects to this location")})),console.error("Could not process drag and drop . upload may be restricted.",Pe,...Ue))}Je||t((0,O.C9)({errorMessage:"Upload not allowed",detailedError:(0,r.vj)([r.OV.S3_PUT_OBJECT,r.OV.S3_PUT_ACTIONS],"upload objects to this location")}))}),[Ze]),{getRootProps:Qe,getInputProps:Xe,isDragActive:et,isDragAccept:tt}=(0,p.VB)({noClick:!0,onDrop:qe}),nt=(0,s.useMemo)((()=>({...Be,...et?Fe:{},...tt?Le:{}})),[et,tt]),st=e=>{if(t((0,d.A7)(null)),t((0,d.cQ)({status:!1})),C&&null!==E){const e=(0,c.x6)(ve).split("/");e.pop();let t="";e&&e.length>0&&(t="".concat(e.join("/"),"/")),u("/browser/".concat(be,"/").concat((0,c.nf)(t)))}t((0,d.TO)(!1)),e&&t((0,d.Yw)(!0))};let ot=j.c9.now();null!==q&&void 0!==q&&q.creation_date&&(ot=j.c9.fromISO(q.creation_date));const at=(null===We||void 0===We?void 0:We.length)<=1?"Download Selected":" Download selected objects as Zip. Any Deleted objects in the selection would be skipped from download.",it=[{action:()=>{t((0,F.op)(be))},label:"Download",disabled:!ze||He,icon:(0,y.jsx)(x.s3U,{}),tooltip:ze?at:(0,r.vj)([r.OV.S3_GET_OBJECT,r.OV.S3_GET_ACTIONS],"download objects from this bucket")},{action:()=>{t((0,F.mS)())},label:"Share",disabled:1!==We.length||!oe||He,icon:(0,y.jsx)(x.liv,{}),tooltip:oe?"Share Selected File":"Sharing unavailable"},{action:()=>{t((0,F.HS)())},label:"Preview",disabled:1!==We.length||!ie||He,icon:(0,y.jsx)(x.cyn,{}),tooltip:ie?"Preview Selected File":"Preview unavailable"},{action:()=>{t((0,F.oz)())},label:"Anonymous Access",disabled:1!==We.length||!We[0].endsWith("/")||!Ke,icon:(0,y.jsx)(x._kf,{}),tooltip:1===We.length&&We[0].endsWith("/")?"Set Anonymous Access to this Folder":"Anonymous Access unavailable"},{action:()=>{X(!0)},label:"Delete",icon:(0,y.jsx)(x.d7y,{}),disabled:!Me||0===We.length,tooltip:Me?"Delete Selected Files":(0,r.vj)([r.OV.S3_DELETE_OBJECT],"delete objects in this bucket")}];return(0,y.jsxs)(s.Fragment,{children:[J&&M&&(0,y.jsx)(Ae,{open:J,closeModalAndRefresh:()=>{t((0,d.Lf)(!1)),t((0,d.go)(null))},bucketName:be,dataObject:{name:M.name,last_modified:"",version_id:M.version_id}}),Q&&(0,y.jsx)(Ne,{deleteOpen:Q,selectedBucket:be,selectedObjects:We,closeDeleteModalAndRefresh:e=>{X(!1),e&&(t((0,O.Hk)("Objects deleted successfully.")),t((0,d.KX)([])),t((0,d.Yw)(!0)))},versioning:U}),ee&&(0,y.jsx)(Ie,{open:ee,closeModalAndRefresh:()=>{te(!1)},bucketName:be}),K&&M&&(0,y.jsx)(ke,{open:K,bucketName:be,actualInfo:{name:M.name||"",last_modified:"",version_id:M.version_id||"",size:M.size||0},onClosePreview:()=>{t((0,d.xE)(!1)),t((0,d.go)(null))}}),!!G&&(0,y.jsx)(re,{open:!!G,closeModal:()=>{t((0,d.Ew)(null))},currentItem:(null===(e=G.name.split("/"))||void 0===e?void 0:e.pop())||"",bucketName:be,internalPaths:ve,actualInfo:{name:G.name,last_modified:"",version_id:G.version_id,size:G.size}}),Y&&(0,y.jsx)(Ee.default,{onClose:()=>{t((0,d.I8)(!1))},bucket:be,modalOpen:Y,prefilledRoute:"".concat(We[0],"*")}),(0,y.jsxs)(x.Mxu,{variant:"full",children:[H&&(0,y.jsx)("div",{style:{paddingBottom:16},children:(0,y.jsx)(Ce,{})}),(0,y.jsx)(x.azJ,{withBorders:!0,sx:{padding:"0 5px"},children:(0,y.jsx)(x.lcx,{icon:(0,y.jsx)("span",{children:(0,y.jsx)(x.brV,{style:{width:30}})}),title:be,subTitle:H?null:(0,y.jsxs)(x.azJ,{sx:{"& .detailsSpacer":{marginRight:18,"@media (max-width: 600px)":{marginRight:0}}},children:[(0,y.jsxs)("span",{className:"detailsSpacer",children:["Created on:\xa0",(0,y.jsx)("strong",{children:null!==q&&void 0!==q&&q.creation_date?ot.toFormat("ccc, LLL dd yyyy HH:mm:ss (ZZZZ)"):""})]}),(0,y.jsxs)("span",{className:"detailsSpacer",children:["Access:\xa0\xa0",(0,y.jsx)("strong",{children:(null===q||void 0===q?void 0:q.access)||""})]}),q&&(0,y.jsx)(s.Fragment,{children:(0,y.jsxs)("span",{className:"detailsSpacer",children:[q.size&&(0,y.jsx)(s.Fragment,{children:(0,c.qO)(q.size)}),q.size&&ce&&(0,y.jsxs)(s.Fragment,{children:[" ","/ ",(0,c.qO)(ce.quota||0)]}),q.size&&q.objects?" - ":"",q.objects&&(0,y.jsxs)(s.Fragment,{children:[q.objects,"\xa0Object",q.objects&&1!==q.objects?"s":""]})]})})]}),actions:(0,y.jsxs)(s.Fragment,{children:[!H&&(0,y.jsx)(L.A,{tooltip:Ge?"Rewind Bucket":(0,r.vj)([r.OV.S3_GET_OBJECT,r.OV.S3_GET_ACTIONS,r.OV.S3_GET_BUCKET_VERSIONING],"apply rewind in this bucket"),children:(0,y.jsx)(x.$nd,{id:"rewind-objects-list",label:"Rewind",icon:(0,y.jsx)(x.Exy,{color:"alert",dotOnly:!0,invisible:!g,children:(0,y.jsx)(x.osr,{style:{minWidth:16,minHeight:16,width:16,height:16,marginTop:-3}})}),variant:"regular",onClick:()=>{te(!0)},disabled:!je||!Ge})}),(0,y.jsx)(L.A,{tooltip:"Reload List",children:(0,y.jsx)(x.$nd,{id:"refresh-objects-list",label:"Refresh",icon:(0,y.jsx)(x.fNY,{}),variant:"regular",onClick:()=>{v?t((0,d.SK)(!0)):(t((0,d.A3)()),t((0,d.Yw)(!0)))},disabled:!H&&(!(0,_._)(be,[r.OV.S3_LIST_BUCKET,r.OV.S3_ALL_LIST_BUCKET])||g)})}),(0,y.jsx)("input",{type:"file",multiple:!0,accept:Re||void 0,onChange:$e,style:{display:"none"},ref:we}),(0,y.jsx)("input",{type:"file",multiple:!0,onChange:$e,style:{display:"none"},ref:ye}),(0,y.jsx)(V,{bucketName:be,uploadPath:Pe,uploadFileFunction:e=>{we&&we.current&&we.current.click(),e()},uploadFolderFunction:e=>{ye&&ye.current&&ye.current.click(),e()}})]}),bottomBorder:!1})}),(0,y.jsxs)("div",{id:"object-list-wrapper",...Qe({style:{...nt}}),children:[(0,y.jsx)("input",{...Xe()}),(0,y.jsxs)(x.azJ,{withBorders:!0,sx:{display:"flex",borderTop:0,padding:0,"& .hideListOnSmall":{"@media (max-width: 799px)":{display:"none"}}},children:[v?(0,y.jsx)(s.Fragment,{children:null!==E&&(0,y.jsx)(fe,{internalPaths:E,bucketName:be})}):(0,y.jsx)(_.R,{scopes:[r.OV.S3_LIST_BUCKET,r.OV.S3_ALL_LIST_BUCKET],resource:be,errorProps:{disabled:!0},children:(0,y.jsxs)(x.xA9,{item:!0,xs:12,sx:{width:"100%",position:"relative","&.detailsOpen":{"@media (max-width: 799px)":{display:"none"}}},className:C?"detailsOpen":"",children:[!H&&(0,y.jsx)(x.xA9,{item:!0,xs:12,sx:{padding:"12px 14px 5px"},children:(0,y.jsx)(N,{bucketName:be,internalPaths:_e,additionalOptions:!je||g?null:(0,y.jsx)(x.Sc0,{name:"deleted_objects",id:"showDeletedObjects",value:"deleted_on",label:"Show deleted objects",onChange:()=>{t((0,d.A3)()),t((0,d.lA)(!S)),st(!0)},checked:S,sx:{marginLeft:5,"@media (max-width: 600px)":{marginLeft:0,flexDirection:"row"}}}),hidePathButton:!1})}),(0,y.jsx)(Te,{})]})}),!H&&(0,y.jsx)(_.R,{scopes:[r.OV.S3_LIST_BUCKET,r.OV.S3_ALL_LIST_BUCKET],resource:be,errorProps:{disabled:!0},children:(0,y.jsxs)(D,{open:C,closePanel:()=>{st(!1)},className:"".concat(v?"hideListOnSmall":""),children:[We.length>0&&(0,y.jsx)(x.Smc,{items:it,title:"Selected Objects:"}),null!==E&&(0,y.jsx)(de,{internalPaths:E,bucketName:be,onClosePanel:st,versioningInfo:U,locking:z})]})})]})]})]})]})};var De=n(18218),Pe=n(69772),Re=n(48793),Ue=n(59707),ze=n(92452);const Ge=e=>{let{bucketName:t}=e;const n=(0,l.jL)(),i=(0,o.d4)(we.s$),c=(0,o.d4)((e=>e.objectBrowser.versionsMode)),u=(0,o.d4)((e=>e.objectBrowser.versionedFile)),h=(0,o.d4)((e=>e.objectBrowser.searchVersions)),m=!(null===i||void 0===i||!i.includes("object-browser-only")),p=(0,a.Zp)(),j=(0,De.A)(t,[r.OV.S3_GET_BUCKET_POLICY,r.OV.S3_PUT_BUCKET_POLICY,r.OV.S3_GET_BUCKET_VERSIONING,r.OV.S3_PUT_BUCKET_VERSIONING,r.OV.S3_GET_BUCKET_ENCRYPTION_CONFIGURATION,r.OV.S3_PUT_BUCKET_ENCRYPTION_CONFIGURATION,r.OV.S3_DELETE_BUCKET,r.OV.S3_GET_BUCKET_NOTIFICATIONS,r.OV.S3_PUT_BUCKET_NOTIFICATIONS,r.OV.S3_GET_REPLICATION_CONFIGURATION,r.OV.S3_PUT_REPLICATION_CONFIGURATION,r.OV.S3_GET_LIFECYCLE_CONFIGURATION,r.OV.S3_PUT_LIFECYCLE_CONFIGURATION,r.OV.ADMIN_GET_BUCKET_QUOTA,r.OV.ADMIN_SET_BUCKET_QUOTA,r.OV.S3_PUT_BUCKET_TAGGING,r.OV.S3_GET_BUCKET_TAGGING,r.OV.S3_LIST_BUCKET_VERSIONS,r.OV.S3_GET_BUCKET_POLICY_STATUS,r.OV.S3_DELETE_BUCKET_POLICY,r.OV.S3_GET_ACTIONS,r.OV.S3_PUT_ACTIONS]),b=(0,y.jsx)(s.Fragment,{children:c?(0,y.jsx)(s.Fragment,{children:(0,y.jsx)(ye.A,{placeholder:"Start typing to filter versions of ".concat(u),onChange:e=>{n((0,d.aj)(e))},value:h})}):(0,y.jsx)(_.R,{scopes:[r.OV.S3_LIST_BUCKET,r.OV.S3_ALL_LIST_BUCKET],resource:t,errorProps:{disabled:!0},children:(0,y.jsx)(Ce,{})})});return(0,s.useEffect)((()=>{n((0,O.ph)("object_browser"))}),[]),(0,y.jsx)(s.Fragment,{children:m?(0,y.jsxs)(x.xA9,{container:!0,sx:{padding:"20px 32px 0"},children:[(0,y.jsx)(x.xA9,{children:(0,y.jsx)(Pe.A,{marginRight:30,marginTop:10})}),(0,y.jsxs)(x.xA9,{item:!0,xs:!0,sx:{display:"flex",gap:10},children:[b,(0,y.jsx)(Ue.A,{})]})]}):(0,y.jsx)(Re.A,{label:(0,y.jsx)(x.EGL,{label:"Object Browser",onClick:()=>{p(r.zZ.OBJECT_BROWSER_VIEW)}}),actions:(0,y.jsxs)(s.Fragment,{children:[(0,y.jsx)(_.R,{scopes:r.pC[r.ac.BUCKET_ADMIN],resource:t,errorProps:{disabled:!0},children:(0,y.jsx)(L.A,{tooltip:j?"Configure Bucket":"You do not have the required permissions to configure this bucket. Please contact your MinIO administrator to request "+r.ac.BUCKET_ADMIN+" permisions.",children:(0,y.jsx)(x.$nd,{id:"configure-bucket-main",color:"primary","aria-label":"Configure Bucket",onClick:()=>p("/buckets/".concat(t,"/admin")),icon:(0,y.jsx)(x.Zes,{style:{width:20,height:20,marginTop:-3}}),style:{padding:"0 10px"}})})}),(0,y.jsx)(ze.A,{})]}),middleComponent:b})})},Me=()=>{const e=(0,l.jL)(),t=(0,a.g)(),n=(0,a.zy)(),u=(0,o.d4)((e=>e.objectBrowser.loadingVersioning)),h=(0,o.d4)((e=>e.objectBrowser.rewind.rewindEnabled)),x=(0,o.d4)((e=>e.objectBrowser.rewind.dateToRewind)),m=(0,o.d4)((e=>e.objectBrowser.showDeleted)),p=(0,o.d4)((e=>e.objectBrowser.requestInProgress)),j=(0,o.d4)((e=>e.objectBrowser.loadingLocking)),b=(0,o.d4)((e=>e.objectBrowser.reloadObjectsList)),g=(0,o.d4)((e=>e.objectBrowser.simplePath)),f=(0,o.d4)((e=>e.system.anonymousMode)),v=(0,o.d4)((e=>e.objectBrowser.selectedBucket)),_=(0,o.d4)((e=>e.objectBrowser.records)),S=t.bucketName||"",O=n.pathname.split("/browser/".concat(S,"/")),w=2===O.length?O[1]:"",T=(0,s.useCallback)((t=>{let n=(new Date).toISOString();null!==x&&h&&(n=x);e({type:"socket/OBRequest",payload:{bucketName:S,path:t,rewindMode:h||m,date:n}})}),[S,m,x,h,e]),C=(0,s.useCallback)((function(){let t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];const n=(0,c.x6)(w);e((0,d.cQ)({status:!1}));let s=n;n.endsWith("/")||""===n||(s="".concat(n.split("/").slice(0,-1).join("/"),"/")),"/"===s&&(s=""),(s!==g||S!==v||t)&&(e((0,d.u)(!0)),T(s))}),[w,e,g,v,S,T]);(0,s.useEffect)((()=>()=>{e({type:"socket/OBCancelLast"})}),[e]),(0,s.useEffect)((()=>{const t=(0,c.x6)(w);e((0,d.vn)(!0)),t.endsWith("/")||""===t?(e((0,d.TO)(!1)),e((0,d.A7)(null)),e((0,d.Qy)(!0))):(e((0,d.oe)(!0)),e((0,d.TO)(!0)),e((0,d.SK)(!0)),e((0,d.A7)("".concat(t?"".concat((0,c.nf)(t)):""))))}),[S,w,x,h,e]),(0,s.useEffect)((()=>{C(!1)}),[C]),(0,s.useEffect)((()=>{b&&0===_.length&&!p&&C(!0)}),[b,_,p,C]);const E=(0,De.A)(S,[r.OV.S3_LIST_BUCKET,r.OV.S3_ALL_LIST_BUCKET])||f;return(0,s.useEffect)((()=>{u&&!f&&(E?i.F.buckets.getBucketVersioning(S).then((t=>{e((0,d.AP)(t.data)),e((0,d.vn)(!1))})).catch((t=>{console.error("Error Getting Object Versioning Status: ",t.error.detailedMessage),e((0,d.vn)(!1))})):(e((0,d.vn)(!1)),e((0,d.A3)())))}),[S,u,e,E,f]),(0,s.useEffect)((()=>{j&&(E?i.F.buckets.getBucketObjectLockingStatus(S).then((t=>{e((0,d.xW)(t.data.object_locking_enabled)),e((0,d.Qy)(!1))})).catch((t=>{console.error("Error Getting Object Locking Status: ",t.error.detailedMessage),e((0,d.Qy)(!1))})):(e((0,d.A3)()),e((0,d.Qy)(!1))))}),[S,j,e,E]),(0,y.jsxs)(s.Fragment,{children:[!f&&(0,y.jsx)(Ge,{bucketName:S}),(0,y.jsx)(Ve,{})]})}},30718:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>f});var s=n(65043),o=n(22166),a=n(89923),i=n(61476),l=n.n(i),r=n(94141),c=n(24241),d=n(70579);const u=e=>{let{id:t,initialDate:n,label:o,maxSeconds:i,entity:l,onChange:r}=e;const u=Math.floor(i/86400),h=Math.floor(i%86400/3600),x=Math.floor(i%3600/60),[m,p]=(0,s.useState)(0),[j,b]=(0,s.useState)(0),[g,f]=(0,s.useState)(0),[v,_]=(0,s.useState)(!0),[S,O]=(0,s.useState)(c.c9.now());(0,s.useEffect)((()=>{p(u),b(h),f(x)}),[u,h,x]),(0,s.useEffect)((()=>{isNaN(j)||isNaN(m)||isNaN(g)||O(((e,t,n,s)=>c.c9.fromJSDate(e).plus({hours:n+24*t,minutes:s}))(n,m,j,g))}),[n,m,j,g]),(0,s.useEffect)((()=>{if(v){const e=S.toFormat("yyyy-MM-dd HH:mm:ss");r(e.split(" ").join("T"),!0)}else r("0000-00-00",!1)}),[S,r,v]),(0,s.useEffect)((()=>{let e=!0;(m<0||m>7||m>u||isNaN(m))&&(e=!1),(j<0||j>23||isNaN(j))&&(e=!1),(g<0||g>59||isNaN(g))&&(e=!1),m===u&&(j>h&&(e=!1),j===h&&g>x&&(e=!1)),m<=0&&j<=0&&g<=0&&(e=!1),_(e)}),[S,u,h,x,r,m,j,g]);const w={"& .textBoxContainer":{minWidth:0},"& input":{textAlign:"center",paddingRight:10,paddingLeft:10,width:40}};return(0,d.jsxs)(a.azJ,{className:"inputItem",children:[(0,d.jsx)(a.azJ,{sx:{display:"flex",alignItems:"center",marginBottom:5},children:(0,d.jsx)(a.l1Y,{htmlFor:t,children:o})}),(0,d.jsxs)(a.azJ,{sx:{display:"flex",alignItems:"flex-start",justifyContent:"space-evenly",gap:10,"& .reverseInput":{flexFlow:"row-reverse","& > label":{fontWeight:400,marginLeft:15,marginRight:25}}},children:[(0,d.jsx)(a.azJ,{children:(0,d.jsx)(a.cl_,{id:t,className:"reverseInput removeArrows",type:"number",min:"0",max:"7",label:"Days",name:t,onChange:e=>{p(parseInt(e.target.value))},value:m.toString(),sx:w,noLabelMinWidth:!0})}),(0,d.jsx)(a.azJ,{children:(0,d.jsx)(a.cl_,{id:t,className:"reverseInput removeArrows",type:"number",min:"0",max:"23",label:"Hours",name:t,onChange:e=>{b(parseInt(e.target.value))},value:j.toString(),sx:w,noLabelMinWidth:!0})}),(0,d.jsx)(a.azJ,{children:(0,d.jsx)(a.cl_,{id:t,className:"reverseInput removeArrows",type:"number",min:"0",max:"59",label:"Minutes",name:t,onChange:e=>{f(parseInt(e.target.value))},value:g.toString(),sx:w,noLabelMinWidth:!0})})]}),(0,d.jsx)(a.azJ,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-start",marginTop:25,marginLeft:10,marginBottom:15,"& .validityText":{fontSize:14,marginTop:15,display:"flex",alignItems:"center",justifyContent:"center","@media (max-width: 900px)":{flexFlow:"column"},"& > .min-icon":{color:"#5E5E5E",width:15,height:15,marginRight:10}},"& .validTill":{fontWeight:"bold",marginLeft:15},"& .invalidDurationText":{marginTop:15,display:"flex",color:"red",fontSize:11}},children:v?(0,d.jsxs)("div",{className:"validityText",children:[(0,d.jsx)(a.qYV,{}),(0,d.jsxs)("div",{children:[l," will be available until:"]})," ",(0,d.jsx)("div",{className:"validTill",children:S.toFormat("MM/dd/yyyy HH:mm:ss ZZZZ")})]}):(0,d.jsx)("div",{className:"invalidDurationText",children:"Please select a valid duration."})})]})};var h=n(56483),x=n(64159),m=n(20554),p=n(56629),j=n(53518),b=n(81708),g=n(6035);const f=e=>{let{open:t,closeModalAndRefresh:n,bucketName:i,dataObject:c}=e;const f=(0,m.jL)(),v=(0,o.d4)(x.Rq),_=(0,o.d4)(g.yL),[S,O]=(0,s.useState)(""),[w,T]=(0,s.useState)(!0),[y,C]=(0,s.useState)(!1),[E,N]=(0,s.useState)(""),[A,I]=(0,s.useState)(!0),[k,B]=(0,s.useState)("null"),F=new Date;return(0,s.useEffect)((()=>{f((0,b.Ex)())}),[f]),(0,s.useEffect)((()=>{if(void 0===c.version_id)return v?(p.F.buckets.listObjects(i,{prefix:(0,h.nf)(c.name||""),with_versions:v}).then((e=>{const t=(e.data.objects||[]).find((e=>e.is_latest));B(t?"".concat(t.version_id):"null")})).catch((e=>{f((0,x.Dy)((0,j.S)(e.error)))})),void T(!1)):(B("null"),void T(!1));B(c.version_id||"null"),T(!1)}),[i,c,v,f]),(0,s.useEffect)((()=>{if(A&&!w){C(!0),O("");const e=new Date("".concat(E)),t=new Date,n=Math.ceil((e.getTime()-t.getTime())/1e3);n>0&&p.F.buckets.shareObject(i,{prefix:(0,h.nf)(c.name||""),version_id:k,expires:""!==E?"".concat(n,"s"):""}).then((e=>{O(e.data),C(!1)})).catch((e=>{f((0,x.Dy)((0,j.S)(e.error))),O(""),C(!1)}))}}),[c,E,i,A,O,f,v,w,k]),(0,d.jsx)(s.Fragment,{children:(0,d.jsxs)(r.A,{title:"Share File",titleIcon:(0,d.jsx)(a.liv,{style:{fill:"#4CCB92"}}),modalOpen:t,onClose:()=>{n()},children:[w&&(0,d.jsx)(a.xA9,{item:!0,xs:12,children:(0,d.jsx)(a.z21,{})}),!w&&(0,d.jsxs)(s.Fragment,{children:[(0,d.jsx)(a.xA9,{item:!0,xs:12,sx:{fontSize:14,fontWeight:400},children:(0,d.jsx)(a.m_M,{placement:"right",tooltip:(0,d.jsxs)("span",{children:["You can reset your session by logging out and logging back in to the web UI. ",(0,d.jsx)("br",{})," ",(0,d.jsx)("br",{}),"You can increase the maximum configuration time by setting the MINIO_STS_DURATION environment variable on all your nodes. ",(0,d.jsx)("br",{})," ",(0,d.jsx)("br",{}),"You can use ",(0,d.jsx)("b",{children:"mc share"})," as an alternative to this UI, where the session length does not limit the URL validity."]}),children:(0,d.jsxs)("span",{children:["The following URL lets you share this object without requiring a login. ",(0,d.jsx)("br",{}),"The URL expires automatically at the earlier of your configured time (",(0,h.K7)(_),") or the expiration of your current web session."]})})}),(0,d.jsx)("br",{}),(0,d.jsx)(a.xA9,{item:!0,xs:12,children:(0,d.jsx)(u,{initialDate:F,id:"date",label:"Active for",maxSeconds:_,onChange:(e,t)=>{I(t),t?N(e):(N(""),O(""))},entity:"Link"})}),(0,d.jsx)(a.xA9,{item:!0,xs:12,sx:{marginBottom:10},children:(0,d.jsx)(a.EmB,{actionButton:(0,d.jsx)(l(),{text:S,children:(0,d.jsx)(a.$nd,{id:"copy-path",variant:"regular",onClick:()=>{f((0,x.h0)("Share URL Copied to clipboard"))},disabled:""===S||y,style:{width:"28px",height:"28px",padding:"0px"},icon:(0,d.jsx)(a.TdU,{})})}),children:S})})]})]})})}},37524:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>f});var s=n(65043),o=n(94141),a=n(89923),i=n(33097),l=n.n(i),r=n(93445),c=n(56483),d=n(56629),u=n(72809),h=n(66730),x=n(10934),m=n(70579);u.A.GlobalWorkerOptions.workerSrc="./scripts/pdf.worker.min.js";const p=e=>{let{path:t,loading:n,onLoad:o,downloadFile:i}=e;const[l,r]=(0,s.useState)(!1),[c,d]=(0,s.useState)(0);if(!t)return null;const u=c>5?5:c,p=Array.from(Array(u).keys());return(0,m.jsxs)(s.Fragment,{children:[l&&0===c&&(0,m.jsx)(a.Wei,{variant:"error",title:"Error",message:(0,m.jsxs)(s.Fragment,{children:["File preview couldn't be displayed, Please try Download instead.",(0,m.jsx)(a.azJ,{sx:{display:"flex",justifyContent:"center",marginTop:12},children:(0,m.jsx)(a.$nd,{id:"download-preview",onClick:i,variant:"callAction",children:"Download File"})})]}),sx:{marginBottom:10}}),!n&&!l&&(0,m.jsx)(a.Wei,{variant:"warning",title:"File Preview",message:(0,m.jsxs)(s.Fragment,{children:["This is a File Preview for the first ",p.length," pages of the document, if you wish to work with the full document please download instead.",(0,m.jsx)(a.azJ,{sx:{display:"flex",justifyContent:"center",marginTop:12},children:(0,m.jsx)(a.$nd,{id:"download-preview",onClick:i,variant:"callAction",children:"Download File"})})]}),sx:{marginBottom:10}}),!l&&(0,m.jsx)(a.azJ,{sx:{overflowY:"auto","& .react-pdf__Page__canvas":{margin:"0 auto",backgroundColor:"transparent"}},children:(0,m.jsx)(h.A,{file:t,onLoadSuccess:e=>{let{_pdfInfo:t}=e;d(t.numPages||0),r(!1),o()},onLoadError:e=>{r(!0),o(),console.error(e)},children:p.map((e=>(0,m.jsx)(x.A,{pageNumber:e+1,renderAnnotationLayer:!1,renderTextLayer:!1,renderForms:!1},"render-page-".concat(e))))})})]})};var j=n(48245),b=n(20554);const g=e=>{let{bucketName:t,actualInfo:n,isFullscreen:o=!1}=e;const i=(0,b.jL)(),[u,h]=(0,s.useState)(!0),[x,g]=(0,s.useState)(null),[f,v]=(0,s.useState)(!1),_=(null===n||void 0===n?void 0:n.name)||"",S=(0,s.useCallback)((()=>{if(!f){const e=(0,c.nf)(_);d.F.buckets.getObjectMetadata(t,{prefix:e,versionID:n.version_id||""}).then((e=>{let t=l()(e.data,"objectMetadata",{});v(!0),g(t)})).catch((e=>{console.error("Error Getting Metadata Status: ",e,null===e||void 0===e?void 0:e.detailedError),v(!0)}))}}),[t,_,f,n.version_id]);(0,s.useEffect)((()=>{t&&_&&S()}),[t,_,S]);let O="";if(n){const e=(0,c.nf)(n.name||"");let s=document.baseURI.replace(window.location.origin,"");O="".concat(window.location.origin).concat(s,"api/v1/buckets/").concat(t,"/objects/download?preview=true&prefix=").concat(e),n.version_id&&(O=O.concat("&version_id=".concat(n.version_id)))}let w=(0,r.IZ)(x,_);const T=()=>{h(!1)};return(0,m.jsxs)(s.Fragment,{children:["none"!==w&&u&&(0,m.jsx)(a.xA9,{item:!0,xs:12,children:(0,m.jsx)(a.z21,{})}),f?(0,m.jsxs)(a.azJ,{sx:{textAlign:"center","& .iframeContainer":{border:"0px",flex:"1 1 auto",width:"100%",height:250,backgroundColor:"transparent",borderRadius:5,"&.image":{height:500},"&.audio":{height:150},"&.video":{height:350},"&.fullHeight":{height:"calc(100vh - 185px)"}},"& .iframeBase":{backgroundColor:"#fff"},"& .iframeHidden":{display:"none"}},children:["video"===w&&(0,m.jsx)("video",{style:{width:"auto",height:"auto",maxWidth:"calc(100vw - 100px)",maxHeight:"calc(100vh - 200px)"},autoPlay:!0,controls:!0,muted:!1,playsInline:!0,onPlay:T,children:(0,m.jsx)("source",{src:O,type:"video/mp4"})}),"audio"===w&&(0,m.jsx)("audio",{style:{width:"100%",height:"auto"},autoPlay:!0,controls:!0,muted:!1,playsInline:!0,onPlay:T,children:(0,m.jsx)("source",{src:O,type:"audio/mpeg"})}),"image"===w&&(0,m.jsx)("img",{style:{width:"auto",height:"auto",maxWidth:"100vw",maxHeight:"100vh"},src:O,alt:"preview",onLoad:T}),"pdf"===w&&(0,m.jsx)(s.Fragment,{children:(0,m.jsx)(p,{path:O,onLoad:T,loading:u,downloadFile:()=>(0,j._)(i,t,O,n)})}),"none"===w&&(0,m.jsx)("div",{children:(0,m.jsx)(a.Wei,{message:" File couldn't be previewed using file extension or mime type. Please try Download instead",title:"Preview unavailable",sx:{margin:"15px 0"}})}),"none"!==w&&"video"!==w&&"audio"!==w&&"image"!==w&&"pdf"!==w&&(0,m.jsx)("div",{className:"iframeBase ".concat(u?"iframeHidden":""),children:(0,m.jsx)("iframe",{src:O,title:"File Preview",allowTransparency:!0,className:"iframeContainer ".concat(o?"fullHeight":w),onLoad:T,children:"File couldn't be loaded. Please try Download instead"})})]}):null]})},f=e=>{let{open:t,bucketName:n,actualInfo:i,onClosePreview:l}=e;return(0,m.jsx)(s.Fragment,{children:(0,m.jsx)(o.A,{modalOpen:t,title:"Preview - ".concat(null===i||void 0===i?void 0:i.name),onClose:l,wideLimit:!1,titleIcon:(0,m.jsx)(a.jG,{}),children:(0,m.jsx)(g,{bucketName:n,actualInfo:i})})})}},72237:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});var s=n(65043),o=n(70579);const a=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return function(n){return(0,o.jsx)(s.Suspense,{fallback:t,children:(0,o.jsx)(e,{...n})})}}},81708:(e,t,n)=>{"use strict";n.d(t,{Ex:()=>p,HS:()=>h,mS:()=>x,op:()=>u,oz:()=>m});var s=n(80907),o=n(56483),a=n(37414),i=n(93445),l=n(6035),r=n(64159),c=n(24241),d=n(56629);const u=(0,s.zD)("objectBrowser/downloadSelected",(async(e,t)=>{let{getState:n,rejectWithValue:s,dispatch:d}=t;const u=n(),h=t=>{const n=(0,o.nf)("".concat(e,"-").concat(t.name,"-").concat((new Date).getTime(),"-").concat(Math.random())),s=(0,a.E0)(8),c=(0,i.RG)(e,(0,o.nf)(t.name),t.version_id,t.size,null,s,(e=>{d((0,l.DW)({instanceID:n,progress:e}))}),(()=>{d((0,l.rx)(n))}),(e=>{d((0,l.iL)({instanceID:n,msg:e}))}),(()=>{d((0,l.Dm)(n))}),(()=>{d((0,r.Hk)("File download will be handled directly by the browser."))}));(0,a.FP)(s,c),d((0,l.cP)({ID:s,bucketName:e,done:!1,instanceID:n,percentage:0,prefix:t.name,type:"download",waitingForFile:!0,failed:!1,cancelled:!1,errorMessage:""}))};if(0!==u.objectBrowser.selectedObjects.length){let t=[];const n=e=>u.objectBrowser.selectedObjects.includes(e.name);if(t=u.objectBrowser.records.filter(n),1===t.length){if(t[0].name.length>200&&(0,o.oK)().toLowerCase().includes("win"))return void d((0,l.Ew)(t[0]));h(t[0])}else if(1===t.length)h(t[0]);else if(t.length>1){const n="".concat(c.c9.now().toFormat("LL-dd-yyyy-HH-mm-ss"),"_files_list.zip"),s=t.reduce(((e,t)=>{const n=null===t||void 0===t?void 0:t.delete_flag;return t&&!n?e.push(t.name):console.log("Skipping ".concat(null===t||void 0===t?void 0:t.name," from download.")),e}),[]);return void await(0,i.Fj)(e,s,n)}}})),h=(0,s.zD)("objectBrowser/openPreview",(async(e,t)=>{let{getState:n,rejectWithValue:s,dispatch:o}=t;const a=n();if(1===a.objectBrowser.selectedObjects.length){let e;const t=e=>a.objectBrowser.selectedObjects.includes(e.name);e=a.objectBrowser.records.find(t),e&&(o((0,l.go)(e)),o((0,l.xE)(!0)))}})),x=(0,s.zD)("objectBrowser/openShare",(async(e,t)=>{let{getState:n,rejectWithValue:s,dispatch:o}=t;const a=n();if(1===a.objectBrowser.selectedObjects.length){let e;const t=e=>a.objectBrowser.selectedObjects.includes(e.name);e=a.objectBrowser.records.find(t),e&&(o((0,l.go)(e)),o((0,l.Lf)(!0)))}})),m=(0,s.zD)("objectBrowser/openAnonymousAccess",(async(e,t)=>{let{getState:n,dispatch:s}=t;const o=n();1===o.objectBrowser.selectedObjects.length&&o.objectBrowser.selectedObjects[0].endsWith("/")&&s((0,l.I8)(!0))})),p=(0,s.zD)("objectBrowser/maxShareLinkExpTime",(async(e,t)=>{let{rejectWithValue:n,dispatch:s}=t;return d.F.buckets.getMaxShareLinkExp().then((e=>{s((0,l.QV)(e.data.exp))})).catch((async e=>n(e.error)))}))},48245:(e,t,n)=>{"use strict";n.d(t,{_:()=>r});var s=n(56483),o=n(37414),a=n(93445),i=n(6035),l=n(64159);const r=(e,t,n,r)=>{var c;const d=(0,s.nf)("".concat(t,"-").concat(r.name,"-").concat((new Date).getTime(),"-").concat(Math.random())),u=(0,s.oK)().toLowerCase().includes("win");if(((null===(c=r.name)||void 0===c?void 0:c.length)||0)>200&&u)return void e((0,i.Jl)(!0));const h=(0,o.E0)(8),x=(0,a.RG)(t,n,r.version_id,r.size||0,null,h,(t=>{e((0,i.DW)({instanceID:d,progress:t}))}),(()=>{e((0,i.rx)(d))}),(t=>{e((0,i.iL)({instanceID:d,msg:t}))}),(()=>{e((0,i.Dm)(d))}),(()=>{e((0,l.Hk)("File download will be handled directly by the browser."))}));(0,o.FP)(h,x),e((0,i.cP)({ID:h,bucketName:t,done:!1,instanceID:d,percentage:0,prefix:r.name||"",type:"download",waitingForFile:!0,failed:!1,cancelled:!1,errorMessage:""}))}},49501:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var s=n(65043),o=n(89923),a=n(70579);const i=e=>{let{value:t}=e;const[n,i]=(0,s.useState)(!1);return(0,a.jsxs)(o.azJ,{sx:{display:"flex",alignItems:"center",flexFlow:"row",["@media (max-width: ".concat(o.nmC.sm,"px)")]:{flexFlow:"column"}},children:[(0,a.jsx)(o.cl_,{id:"inspect-dec-key",name:"inspect-dec-key",placeholder:"",label:"",type:n?"text":"password",onChange:()=>{},value:t,overlayIcon:(0,a.jsx)(o.TdU,{}),readOnly:!0,overlayAction:()=>navigator.clipboard.writeText(t)}),(0,a.jsx)(o.$nd,{id:"show-hide-key",style:{marginLeft:"10px"},variant:"callAction",onClick:()=>i(!n),label:"Show/Hide"})]})}},17640:()=>{},23237:()=>{},97492:()=>{},31815:()=>{},66671:()=>{},82787:()=>{}}]); +//# sourceMappingURL=2959.e0878952.chunk.js.map \ No newline at end of file diff --git a/web-app/build/static/js/2959.e0878952.chunk.js.map b/web-app/build/static/js/2959.e0878952.chunk.js.map new file mode 100644 index 0000000000..c4451a22c9 --- /dev/null +++ b/web-app/build/static/js/2959.e0878952.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/2959.e0878952.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/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 { encodeURLString, 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/${bucketName}/${\n subSplit ? `${encodeURLString(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 ? `/${encodeURLString(`${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 { encodeURLString } from \"common/utils\";\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: encodeURLString(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: encodeURLString(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 { decodeURLString } from \"../../../../../../common/utils\";\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 decodedSelectedObject = decodeURLString(selectedObject);\n const recursive = decodedSelectedObject.endsWith(\"/\");\n invokeDeleteApi(\n \"DELETE\",\n `/api/v1/buckets/${selectedBucket}/objects?prefix=${selectedObject}${\n selectedVersion !== \"\"\n ? `&version_id=${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 {decodeURLString(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 { encodeURLString } from \"../../../../../../common/utils\";\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: encodeURLString(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}\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 { encodeURLString } from \"common/utils\";\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 selectedObject = encodeURLString(actualInfo.name || \"\");\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: selectedObject, 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: selectedObject, 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 decodeURLString,\n deleteCookie,\n encodeURLString,\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 const file = encodeURLString(inspectPath + \"/xl.meta\");\n const volume = encodeURLString(volumeName);\n\n let basename = document.baseURI.replace(window.location.origin, \"\");\n const urlOfInspectApi = `${window.location.origin}${basename}/api/v1/admin/inspect?volume=${volume}&file=${file}&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 {decodeURLString(inspectPath)}?{\" \"}\n
\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 decodeURLString,\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 = decodeURLString(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 { encodeURLString } from \"../../../../../../common/utils\";\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: encodeURLString(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 { decodeURLString } from \"../../../../../../common/utils\";\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 {decodeURLString(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 { decodeURLString, 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 const decodedInternalPaths = decodeURLString(internalPaths);\n\n // Filter the results prefixes as API can return more files than expected.\n const filteredPrefixes = result.filter(\n (item: BucketObject) => item.name === decodedInternalPaths,\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 { encodeURLString } from \"../../../../../../common/utils\";\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 filteredRecords = records.filter((b: BucketObjectItem) => {\n if (searchObjects === \"\") {\n return true;\n } else {\n const objectName = b.name.toLowerCase();\n if (objectName.indexOf(searchObjects.toLowerCase()) >= 0) {\n return true;\n } else {\n return false;\n }\n }\n });\n\n const plSelect = filteredRecords;\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/${bucketName}${\n idElement ? `/${encodeURLString(idElement)}` : ``\n }`;\n\n // for anonymous start download\n if (anonymousMode && !object.name?.endsWith(\"/\")) {\n downloadObject(\n dispatch,\n bucketName,\n `${encodeURLString(idElement)}`,\n object,\n );\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(\n setSelectedObjectView(\n `${idElement ? `${encodeURLString(idElement)}` : ``}`,\n ),\n );\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 {\n decodeURLString,\n encodeURLString,\n niceBytesInt,\n} 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 = pathSegment.length === 2 ? pathSegment[1] : \"\";\n\n const pageTitle = decodeURLString(internalPaths);\n const currentPath = pageTitle.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 const encodedPath = encodeURLString(objectName);\n\n if (!isMetaDataLoaded && encodedPath) {\n api.buckets\n .getObjectMetadata(bucketName, {\n prefix: encodedPath,\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 let encodedPath = \"\";\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=${encodeURLString(\n prefixPath + fileName,\n )}`;\n } else {\n uploadUrl = `${uploadUrl}?prefix=${encodeURLString(fileName)}`;\n }\n\n encodedPath = encodeURLString(prefixPath);\n\n const identity = encodeURLString(\n `${bucketName}-${encodedPath}-${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: `${decodeURLString(encodedPath)}${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 decodedPath = decodeURLString(internalPaths);\n const splitURLS = decodedPath.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(`/browser/${bucketName}/${encodeURLString(URLItem)}`);\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 { decodeURLString, encodeURLString } from \"../../../../common/utils\";\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(`/browser/${bucketName}/`);\n const internalPaths = pathSegment.length === 2 ? 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 const decodedInternalPaths = decodeURLString(internalPaths);\n\n // We exit Versions mode in case of path change\n dispatch(setVersionsModeEnabled({ status: false }));\n\n let searchPath = decodedInternalPaths;\n\n if (!decodedInternalPaths.endsWith(\"/\") && decodedInternalPaths !== \"\") {\n searchPath = `${decodedInternalPaths\n .split(\"/\")\n .slice(0, -1)\n .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 const decodedIPaths = decodeURLString(internalPaths);\n\n dispatch(setLoadingVersioning(true));\n\n if (decodedIPaths.endsWith(\"/\") || decodedIPaths === \"\") {\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(\n setSelectedObjectView(\n `${decodedIPaths ? `${encodeURLString(decodedIPaths)}` : ``}`,\n ),\n );\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 initialDate: Date;\n maxSeconds: number;\n label: string;\n entity: string;\n onChange: (newDate: string, isValid: boolean) => void;\n}\n\nconst calculateNewTime = (\n initialDate: Date,\n days: number,\n hours: number,\n minutes: number,\n) => {\n return DateTime.fromJSDate(initialDate).plus({\n hours: hours + days * 24,\n minutes,\n }); // Lump days into hours to avoid daylight savings causing issues\n};\n\nconst DaysSelector = ({\n id,\n initialDate,\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(DateTime.now());\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(\n initialDate,\n selectedDays,\n selectedHours,\n selectedMinutes,\n ),\n );\n }\n }, [initialDate, selectedDays, selectedHours, selectedMinutes]);\n\n useEffect(() => {\n if (validDate) {\n const formattedDate = dateSelected.toFormat(\"yyyy-MM-dd HH:mm:ss\");\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 ? (\n
\n \n
{entity} will be available until:
{\" \"}\n
\n {dateSelected.toFormat(\"MM/dd/yyyy HH:mm:ss ZZZZ\")}\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 {\n encodeURLString,\n niceTimeFromSeconds,\n} 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\";\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 initialDate = new Date();\n\n const dateChanged = (newDate: string, isValid: boolean) => {\n setDateValid(isValid);\n if (isValid) {\n setSelectedDate(newDate);\n return;\n }\n setSelectedDate(\"\");\n setShareURL(\"\");\n };\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: encodeURLString(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: encodeURLString(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.js\";\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 { encodeURLString } from \"../../../../../../common/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 const encodedPath = encodeURLString(objectName);\n api.buckets\n .getObjectMetadata(bucketName, {\n prefix: encodedPath,\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 const encodedPath = encodeURLString(actualInfo.name || \"\");\n let basename = document.baseURI.replace(window.location.origin, \"\");\n path = `${window.location.origin}${basename}api/v1/buckets/${bucketName}/objects/download?preview=true&prefix=${encodedPath}`;\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) 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 { encodeURLString, 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 = encodeURLString(\n `${bucketName}-${object.name}-${new Date().getTime()}-${Math.random()}`,\n );\n\n const ID = makeid(8);\n\n const downloadCall = download(\n bucketName,\n encodeURLString(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 { encodeURLString, 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 = encodeURLString(\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","encodeURLString","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","decodeURLString","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","file","volume","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","decodedInternalPaths","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","pageTitle","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","encodedPath","resetRewind","setAttribute","isPrefix","getBucketQuota","quotaVals","detailedMessage","setBucketDetailsLoad","setBucketInfo","getBucketRetentionConfig","setRetentionConfig","handleUploadButton","files","newFiles","uploadObject","folderPath","pathPrefix","upload","uploadPromise","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","decodedIPaths","setLoadingVersioning","setLoadingLocking","getBucketVersioning","setIsVersioned","getBucketObjectLockingStatus","setLockingEnabled","object_locking_enabled","OBHeader","initialDate","maxSeconds","entity","maxDays","maxHours","maxMinutes","selectedDays","setSelectedDays","selectedHours","setSelectedHours","selectedMinutes","setSelectedMinutes","setValidDate","dateSelected","setDateSelected","calculateNewTime","hours","minutes","fromJSDate","plus","formattedDate","valid","extraStyles","paddingLeft","min","max","LinkIcon","maxshareLinkExpTimeVal","maxShareLinkExpTime","shareURL","setShareURL","isLoadingVersion","setIsLoadingVersion","isLoadingFile","setIsLoadingFile","selectedDate","setSelectedDate","dateValid","setDateValid","setVersionID","getMaxShareLinkExpTime","latestVersion","elem","slDate","currDate","diffDate","ceil","shareObject","niceTimeFromSeconds","DaysSelector","dateChanged","newDate","ReadBox","actionButton","setModalSnackMessage","pdfjs","GlobalWorkerOptions","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","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/6016.dcb3bcb4.chunk.js b/web-app/build/static/js/6016.3475b798.chunk.js similarity index 69% rename from web-app/build/static/js/6016.dcb3bcb4.chunk.js rename to web-app/build/static/js/6016.3475b798.chunk.js index b4d86bfe94..2d94575f55 100644 --- a/web-app/build/static/js/6016.dcb3bcb4.chunk.js +++ b/web-app/build/static/js/6016.3475b798.chunk.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkweb_app=self.webpackChunkweb_app||[]).push([[6016],{13839:(e,t,n)=>{n.d(t,{G:()=>_});var r,i=n(65043),a=n(58387),o=n(59101),c=n(11629),l=n.n(c),u=n(50539),s=n.n(u),p=n(79686),f=n.n(p),h=n(35268),y=n.n(h),d=n(19853),m=n.n(d),b=n(68471),v=n(68892),g=n(94020),O=n(81519),A=n(6015),w=n(76307),x=n(20202),j=n(240),P=["layout","type","stroke","connectNulls","isRange","ref"];function E(e){return E="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},E(e)}function S(e,t){if(null==e)return{};var n,r,i=function(e,t){if(null==e)return{};var n,r,i={},a=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}function k(){return k=Object.assign?Object.assign.bind():function(e){for(var t=1;t0||!m()(c,r)||!m()(l,i))?this.renderAreaWithAnimation(e,t):this.renderAreaStatically(r,i,e,t)}},{key:"render",value:function(){var e,t=this.props,n=t.hide,r=t.dot,o=t.points,c=t.className,l=t.top,u=t.left,s=t.xAxis,p=t.yAxis,h=t.width,y=t.height,d=t.isAnimationActive,m=t.id;if(n||!o||!o.length)return null;var b=this.state.isAnimationFinished,v=1===o.length,A=(0,a.A)("recharts-area",c),w=s&&s.allowDataOverflow,x=p&&p.allowDataOverflow,P=w||x,E=f()(m)?this.id:m,S=null!==(e=(0,j.J9)(r,!1))&&void 0!==e?e:{r:3,strokeWidth:2},k=S.r,D=void 0===k?3:k,M=S.strokeWidth,R=void 0===M?2:M,N=((0,j.ON)(r)?r:{}).clipDot,C=void 0===N||N,W=2*D+R;return i.createElement(g.W,{className:A},w||x?i.createElement("defs",null,i.createElement("clipPath",{id:"clipPath-".concat(E)},i.createElement("rect",{x:w?u:u-h/2,y:x?l:l-y/2,width:w?h:2*h,height:x?y:2*y})),!C&&i.createElement("clipPath",{id:"clipPath-dots-".concat(E)},i.createElement("rect",{x:u-W/2,y:l-W/2,width:h+W,height:y+W}))):null,v?null:this.renderArea(P,E),(r||v)&&this.renderDots(P,C,E),(!d||b)&&O.Z.renderCallByParent(this.props,o))}}])&&R(n.prototype,r),c&&R(n,c),Object.defineProperty(n,"prototype",{writable:!1}),t}(i.PureComponent);r=_,B(_,"displayName","Area"),B(_,"defaultProps",{stroke:"#3182bd",fill:"#3182bd",fillOpacity:.6,xAxisId:0,yAxisId:0,legendType:"line",connectNulls:!1,points:[],dot:!1,activeDot:!0,hide:!1,isAnimationActive:!A.m.isSsr,animationBegin:0,animationDuration:1500,animationEasing:"ease"}),B(_,"getBaseValue",(function(e,t,n,r){var i=e.layout,a=e.baseValue,o=t.props.baseValue,c=null!==o&&void 0!==o?o:a;if((0,w.Et)(c)&&"number"===typeof c)return c;var l="horizontal"===i?r:n,u=l.scale.domain();if("number"===l.type){var s=Math.max(u[0],u[1]),p=Math.min(u[0],u[1]);return"dataMin"===c?p:"dataMax"===c||s<0?s:Math.max(Math.min(u[0],u[1]),0)}return"dataMin"===c?u[0]:"dataMax"===c?u[1]:u[0]})),B(_,"getComposedData",(function(e){var t,n=e.props,i=e.item,a=e.xAxis,o=e.yAxis,c=e.xAxisTicks,l=e.yAxisTicks,u=e.bandSize,s=e.dataKey,p=e.stackedData,f=e.dataStartIndex,h=e.displayedData,y=e.offset,d=n.layout,m=p&&p.length,b=r.getBaseValue(n,i,a,o),v="horizontal"===d,g=!1,O=h.map((function(e,t){var n;m?n=p[f+t]:(n=(0,x.kr)(e,s),Array.isArray(n)?g=!0:n=[b,n]);var r=null==n[1]||m&&null==(0,x.kr)(e,s);return v?{x:(0,x.nb)({axis:a,ticks:c,bandSize:u,entry:e,index:t}),y:r?null:o.scale(n[1]),value:n,payload:e}:{x:r?null:a.scale(n[1]),y:(0,x.nb)({axis:o,ticks:l,bandSize:u,entry:e,index:t}),value:n,payload:e}}));return t=m||g?O.map((function(e){var t=Array.isArray(e.value)?e.value[0]:null;return v?{x:e.x,y:null!=t&&null!=e.y?o.scale(t):null}:{x:null!=t?a.scale(t):null,y:e.y}})):v?o.scale(b):a.scale(b),M({points:O,baseLine:t,layout:d,isRange:g},y)})),B(_,"renderDotItem",(function(e,t){var n;if(i.isValidElement(e))n=i.cloneElement(e,t);else if(l()(e))n=e(t);else{var r=(0,a.A)("recharts-area-dot","boolean"!==typeof e?e.className:"");n=i.createElement(v.c,k({},t,{className:r}))}return n}))},877:(e,t,n)=>{n.d(t,{Q:()=>l});var r=n(88420),i=n(13839),a=n(52185),o=n(6026),c=n(3831),l=(0,r.gu)({chartName:"AreaChart",GraphicalChild:i.G,axisComponents:[{axisType:"xAxis",AxisComp:a.W},{axisType:"yAxis",AxisComp:o.h}],formatAxisMap:c.pr})},50108:(e,t,n)=>{n.d(t,{u:()=>b});var r=n(58387),i=n(65043),a=n(79889),o=n.n(a),c=n(2086),l=n(76307),u=n(155),s=n(240);function p(e){return p="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},p(e)}function f(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 h(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&(e=o()(e,j,{trailing:!0,leading:!1}));var t=new ResizeObserver(e),n=M.current.getBoundingClientRect(),r=n.width,i=n.height;return I(r,i),t.observe(M.current),function(){t.disconnect()}}),[I,j]);var L=(0,i.useMemo)((function(){var e=C.containerWidth,t=C.containerHeight;if(e<0||t<0)return null;(0,u.R)((0,l._3)(y)||(0,l._3)(b),"The width(%s) and height(%s) are both fixed numbers,\n maybe you don't need to use a ResponsiveContainer.",y,b),(0,u.R)(!n||n>0,"The aspect(%s) must be greater than zero.",n);var r=(0,l._3)(y)?e:y,a=(0,l._3)(b)?t:b;n&&n>0&&(r?a=r/n:a&&(r=a*n),A&&a>A&&(a=A)),(0,u.R)(r>0||a>0,"The width(%s) and height(%s) of chart should be greater than 0,\n please check the style of container, or the props width(%s) and height(%s),\n or add a minWidth(%s) or minHeight(%s) or use aspect(%s) to control the\n height and width.",r,a,y,b,g,O,n);var o=!Array.isArray(w)&&(0,c.isElement)(w)&&(0,s.Mn)(w.type).endsWith("Chart");return i.Children.map(w,(function(e){return(0,c.isElement)(e)?(0,i.cloneElement)(e,h({width:r,height:a},o?{style:h({height:"100%",width:"100%",maxHeight:a,maxWidth:r},e.props.style)}:{})):e}))}),[n,w,b,A,O,g,C,y]);return i.createElement("div",{id:P?"".concat(P):void 0,className:(0,r.A)("recharts-responsive-container",E),style:h(h({},D),{},{width:y,height:b,minWidth:g,minHeight:O,maxHeight:A}),ref:M},L)}))}}]); -//# sourceMappingURL=6016.dcb3bcb4.chunk.js.map \ No newline at end of file +"use strict";(self.webpackChunkweb_app=self.webpackChunkweb_app||[]).push([[6016],{13839:(e,t,n)=>{n.d(t,{G:()=>_});var r,i=n(65043),a=n(58387),o=n(59101),c=n(11629),l=n.n(c),u=n(50539),s=n.n(u),p=n(79686),f=n.n(p),h=n(35268),y=n.n(h),d=n(19853),m=n.n(d),b=n(68471),v=n(68892),g=n(94020),O=n(81519),A=n(6015),w=n(76307),x=n(20202),j=n(240),P=["layout","type","stroke","connectNulls","isRange","ref"];function E(e){return E="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},E(e)}function S(e,t){if(null==e)return{};var n,r,i=function(e,t){if(null==e)return{};var n,r,i={},a=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}function k(){return k=Object.assign?Object.assign.bind():function(e){for(var t=1;t0||!m()(c,r)||!m()(l,i))?this.renderAreaWithAnimation(e,t):this.renderAreaStatically(r,i,e,t)}},{key:"render",value:function(){var e,t=this.props,n=t.hide,r=t.dot,o=t.points,c=t.className,l=t.top,u=t.left,s=t.xAxis,p=t.yAxis,h=t.width,y=t.height,d=t.isAnimationActive,m=t.id;if(n||!o||!o.length)return null;var b=this.state.isAnimationFinished,v=1===o.length,A=(0,a.A)("recharts-area",c),w=s&&s.allowDataOverflow,x=p&&p.allowDataOverflow,P=w||x,E=f()(m)?this.id:m,S=null!==(e=(0,j.J9)(r,!1))&&void 0!==e?e:{r:3,strokeWidth:2},k=S.r,D=void 0===k?3:k,M=S.strokeWidth,R=void 0===M?2:M,N=((0,j.ON)(r)?r:{}).clipDot,C=void 0===N||N,W=2*D+R;return i.createElement(g.W,{className:A},w||x?i.createElement("defs",null,i.createElement("clipPath",{id:"clipPath-".concat(E)},i.createElement("rect",{x:w?u:u-h/2,y:x?l:l-y/2,width:w?h:2*h,height:x?y:2*y})),!C&&i.createElement("clipPath",{id:"clipPath-dots-".concat(E)},i.createElement("rect",{x:u-W/2,y:l-W/2,width:h+W,height:y+W}))):null,v?null:this.renderArea(P,E),(r||v)&&this.renderDots(P,C,E),(!d||b)&&O.Z.renderCallByParent(this.props,o))}}])&&R(n.prototype,r),c&&R(n,c),Object.defineProperty(n,"prototype",{writable:!1}),t}(i.PureComponent);r=_,B(_,"displayName","Area"),B(_,"defaultProps",{stroke:"#3182bd",fill:"#3182bd",fillOpacity:.6,xAxisId:0,yAxisId:0,legendType:"line",connectNulls:!1,points:[],dot:!1,activeDot:!0,hide:!1,isAnimationActive:!A.m.isSsr,animationBegin:0,animationDuration:1500,animationEasing:"ease"}),B(_,"getBaseValue",(function(e,t,n,r){var i=e.layout,a=e.baseValue,o=t.props.baseValue,c=null!==o&&void 0!==o?o:a;if((0,w.Et)(c)&&"number"===typeof c)return c;var l="horizontal"===i?r:n,u=l.scale.domain();if("number"===l.type){var s=Math.max(u[0],u[1]),p=Math.min(u[0],u[1]);return"dataMin"===c?p:"dataMax"===c||s<0?s:Math.max(Math.min(u[0],u[1]),0)}return"dataMin"===c?u[0]:"dataMax"===c?u[1]:u[0]})),B(_,"getComposedData",(function(e){var t,n=e.props,i=e.item,a=e.xAxis,o=e.yAxis,c=e.xAxisTicks,l=e.yAxisTicks,u=e.bandSize,s=e.dataKey,p=e.stackedData,f=e.dataStartIndex,h=e.displayedData,y=e.offset,d=n.layout,m=p&&p.length,b=r.getBaseValue(n,i,a,o),v="horizontal"===d,g=!1,O=h.map((function(e,t){var n;m?n=p[f+t]:(n=(0,x.kr)(e,s),Array.isArray(n)?g=!0:n=[b,n]);var r=null==n[1]||m&&null==(0,x.kr)(e,s);return v?{x:(0,x.nb)({axis:a,ticks:c,bandSize:u,entry:e,index:t}),y:r?null:o.scale(n[1]),value:n,payload:e}:{x:r?null:a.scale(n[1]),y:(0,x.nb)({axis:o,ticks:l,bandSize:u,entry:e,index:t}),value:n,payload:e}}));return t=m||g?O.map((function(e){var t=Array.isArray(e.value)?e.value[0]:null;return v?{x:e.x,y:null!=t&&null!=e.y?o.scale(t):null}:{x:null!=t?a.scale(t):null,y:e.y}})):v?o.scale(b):a.scale(b),M({points:O,baseLine:t,layout:d,isRange:g},y)})),B(_,"renderDotItem",(function(e,t){var n;if(i.isValidElement(e))n=i.cloneElement(e,t);else if(l()(e))n=e(t);else{var r=(0,a.A)("recharts-area-dot","boolean"!==typeof e?e.className:"");n=i.createElement(v.c,k({},t,{className:r}))}return n}))},877:(e,t,n)=>{n.d(t,{Q:()=>l});var r=n(88420),i=n(13839),a=n(52185),o=n(6026),c=n(3831),l=(0,r.gu)({chartName:"AreaChart",GraphicalChild:i.G,axisComponents:[{axisType:"xAxis",AxisComp:a.W},{axisType:"yAxis",AxisComp:o.h}],formatAxisMap:c.pr})},50108:(e,t,n)=>{n.d(t,{u:()=>b});var r=n(58387),i=n(65043),a=n(79889),o=n.n(a),c=n(69062),l=n(76307),u=n(155),s=n(240);function p(e){return p="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},p(e)}function f(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 h(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&(e=o()(e,j,{trailing:!0,leading:!1}));var t=new ResizeObserver(e),n=M.current.getBoundingClientRect(),r=n.width,i=n.height;return I(r,i),t.observe(M.current),function(){t.disconnect()}}),[I,j]);var L=(0,i.useMemo)((function(){var e=C.containerWidth,t=C.containerHeight;if(e<0||t<0)return null;(0,u.R)((0,l._3)(y)||(0,l._3)(b),"The width(%s) and height(%s) are both fixed numbers,\n maybe you don't need to use a ResponsiveContainer.",y,b),(0,u.R)(!n||n>0,"The aspect(%s) must be greater than zero.",n);var r=(0,l._3)(y)?e:y,a=(0,l._3)(b)?t:b;n&&n>0&&(r?a=r/n:a&&(r=a*n),A&&a>A&&(a=A)),(0,u.R)(r>0||a>0,"The width(%s) and height(%s) of chart should be greater than 0,\n please check the style of container, or the props width(%s) and height(%s),\n or add a minWidth(%s) or minHeight(%s) or use aspect(%s) to control the\n height and width.",r,a,y,b,g,O,n);var o=!Array.isArray(w)&&(0,c.isElement)(w)&&(0,s.Mn)(w.type).endsWith("Chart");return i.Children.map(w,(function(e){return(0,c.isElement)(e)?(0,i.cloneElement)(e,h({width:r,height:a},o?{style:h({height:"100%",width:"100%",maxHeight:a,maxWidth:r},e.props.style)}:{})):e}))}),[n,w,b,A,O,g,C,y]);return i.createElement("div",{id:P?"".concat(P):void 0,className:(0,r.A)("recharts-responsive-container",E),style:h(h({},D),{},{width:y,height:b,minWidth:g,minHeight:O,maxHeight:A}),ref:M},L)}))}}]); +//# sourceMappingURL=6016.3475b798.chunk.js.map \ No newline at end of file diff --git a/web-app/build/static/js/6016.dcb3bcb4.chunk.js.map b/web-app/build/static/js/6016.3475b798.chunk.js.map similarity index 99% rename from web-app/build/static/js/6016.dcb3bcb4.chunk.js.map rename to web-app/build/static/js/6016.3475b798.chunk.js.map index 2f5551f96e..3f9ea33c40 100644 --- a/web-app/build/static/js/6016.dcb3bcb4.chunk.js.map +++ b/web-app/build/static/js/6016.3475b798.chunk.js.map @@ -1 +1 @@ -{"version":3,"file":"static/js/6016.dcb3bcb4.chunk.js","mappings":"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","sources":["../node_modules/recharts/es6/cartesian/Area.js","../node_modules/recharts/es6/chart/AreaChart.js","../node_modules/recharts/es6/component/ResponsiveContainer.js"],"sourcesContent":["var _excluded = [\"layout\", \"type\", \"stroke\", \"connectNulls\", \"isRange\", \"ref\"];\nvar _Area;\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\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; }\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; }\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\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, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }\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); }\nfunction _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\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); }\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : String(i); }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\n/**\n * @fileOverview Area\n */\nimport React, { PureComponent } from 'react';\nimport clsx from 'clsx';\nimport Animate from 'react-smooth';\nimport isFunction from 'lodash/isFunction';\nimport max from 'lodash/max';\nimport isNil from 'lodash/isNil';\nimport isNan from 'lodash/isNaN';\nimport isEqual from 'lodash/isEqual';\nimport { Curve } from '../shape/Curve';\nimport { Dot } from '../shape/Dot';\nimport { Layer } from '../container/Layer';\nimport { LabelList } from '../component/LabelList';\nimport { Global } from '../util/Global';\nimport { isNumber, uniqueId, interpolateNumber } from '../util/DataUtils';\nimport { getCateCoordinateOfLine, getValueByDataKey } from '../util/ChartUtils';\nimport { filterProps, isDotProps } from '../util/ReactUtils';\nexport var Area = /*#__PURE__*/function (_PureComponent) {\n _inherits(Area, _PureComponent);\n function Area() {\n var _this;\n _classCallCheck(this, Area);\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n _this = _callSuper(this, Area, [].concat(args));\n _defineProperty(_assertThisInitialized(_this), \"state\", {\n isAnimationFinished: true\n });\n _defineProperty(_assertThisInitialized(_this), \"id\", uniqueId('recharts-area-'));\n _defineProperty(_assertThisInitialized(_this), \"handleAnimationEnd\", function () {\n var onAnimationEnd = _this.props.onAnimationEnd;\n _this.setState({\n isAnimationFinished: true\n });\n if (isFunction(onAnimationEnd)) {\n onAnimationEnd();\n }\n });\n _defineProperty(_assertThisInitialized(_this), \"handleAnimationStart\", function () {\n var onAnimationStart = _this.props.onAnimationStart;\n _this.setState({\n isAnimationFinished: false\n });\n if (isFunction(onAnimationStart)) {\n onAnimationStart();\n }\n });\n return _this;\n }\n _createClass(Area, [{\n key: \"renderDots\",\n value: function renderDots(needClip, clipDot, clipPathId) {\n var isAnimationActive = this.props.isAnimationActive;\n var isAnimationFinished = this.state.isAnimationFinished;\n if (isAnimationActive && !isAnimationFinished) {\n return null;\n }\n var _this$props = this.props,\n dot = _this$props.dot,\n points = _this$props.points,\n dataKey = _this$props.dataKey;\n var areaProps = filterProps(this.props, false);\n var customDotProps = filterProps(dot, true);\n var dots = points.map(function (entry, i) {\n var dotProps = _objectSpread(_objectSpread(_objectSpread({\n key: \"dot-\".concat(i),\n r: 3\n }, areaProps), customDotProps), {}, {\n dataKey: dataKey,\n cx: entry.x,\n cy: entry.y,\n index: i,\n value: entry.value,\n payload: entry.payload\n });\n return Area.renderDotItem(dot, dotProps);\n });\n var dotsProps = {\n clipPath: needClip ? \"url(#clipPath-\".concat(clipDot ? '' : 'dots-').concat(clipPathId, \")\") : null\n };\n return /*#__PURE__*/React.createElement(Layer, _extends({\n className: \"recharts-area-dots\"\n }, dotsProps), dots);\n }\n }, {\n key: \"renderHorizontalRect\",\n value: function renderHorizontalRect(alpha) {\n var _this$props2 = this.props,\n baseLine = _this$props2.baseLine,\n points = _this$props2.points,\n strokeWidth = _this$props2.strokeWidth;\n var startX = points[0].x;\n var endX = points[points.length - 1].x;\n var width = alpha * Math.abs(startX - endX);\n var maxY = max(points.map(function (entry) {\n return entry.y || 0;\n }));\n if (isNumber(baseLine) && typeof baseLine === 'number') {\n maxY = Math.max(baseLine, maxY);\n } else if (baseLine && Array.isArray(baseLine) && baseLine.length) {\n maxY = Math.max(max(baseLine.map(function (entry) {\n return entry.y || 0;\n })), maxY);\n }\n if (isNumber(maxY)) {\n return /*#__PURE__*/React.createElement(\"rect\", {\n x: startX < endX ? startX : startX - width,\n y: 0,\n width: width,\n height: Math.floor(maxY + (strokeWidth ? parseInt(\"\".concat(strokeWidth), 10) : 1))\n });\n }\n return null;\n }\n }, {\n key: \"renderVerticalRect\",\n value: function renderVerticalRect(alpha) {\n var _this$props3 = this.props,\n baseLine = _this$props3.baseLine,\n points = _this$props3.points,\n strokeWidth = _this$props3.strokeWidth;\n var startY = points[0].y;\n var endY = points[points.length - 1].y;\n var height = alpha * Math.abs(startY - endY);\n var maxX = max(points.map(function (entry) {\n return entry.x || 0;\n }));\n if (isNumber(baseLine) && typeof baseLine === 'number') {\n maxX = Math.max(baseLine, maxX);\n } else if (baseLine && Array.isArray(baseLine) && baseLine.length) {\n maxX = Math.max(max(baseLine.map(function (entry) {\n return entry.x || 0;\n })), maxX);\n }\n if (isNumber(maxX)) {\n return /*#__PURE__*/React.createElement(\"rect\", {\n x: 0,\n y: startY < endY ? startY : startY - height,\n width: maxX + (strokeWidth ? parseInt(\"\".concat(strokeWidth), 10) : 1),\n height: Math.floor(height)\n });\n }\n return null;\n }\n }, {\n key: \"renderClipRect\",\n value: function renderClipRect(alpha) {\n var layout = this.props.layout;\n if (layout === 'vertical') {\n return this.renderVerticalRect(alpha);\n }\n return this.renderHorizontalRect(alpha);\n }\n }, {\n key: \"renderAreaStatically\",\n value: function renderAreaStatically(points, baseLine, needClip, clipPathId) {\n var _this$props4 = this.props,\n layout = _this$props4.layout,\n type = _this$props4.type,\n stroke = _this$props4.stroke,\n connectNulls = _this$props4.connectNulls,\n isRange = _this$props4.isRange,\n ref = _this$props4.ref,\n others = _objectWithoutProperties(_this$props4, _excluded);\n return /*#__PURE__*/React.createElement(Layer, {\n clipPath: needClip ? \"url(#clipPath-\".concat(clipPathId, \")\") : null\n }, /*#__PURE__*/React.createElement(Curve, _extends({}, filterProps(others, true), {\n points: points,\n connectNulls: connectNulls,\n type: type,\n baseLine: baseLine,\n layout: layout,\n stroke: \"none\",\n className: \"recharts-area-area\"\n })), stroke !== 'none' && /*#__PURE__*/React.createElement(Curve, _extends({}, filterProps(this.props, false), {\n className: \"recharts-area-curve\",\n layout: layout,\n type: type,\n connectNulls: connectNulls,\n fill: \"none\",\n points: points\n })), stroke !== 'none' && isRange && /*#__PURE__*/React.createElement(Curve, _extends({}, filterProps(this.props, false), {\n className: \"recharts-area-curve\",\n layout: layout,\n type: type,\n connectNulls: connectNulls,\n fill: \"none\",\n points: baseLine\n })));\n }\n }, {\n key: \"renderAreaWithAnimation\",\n value: function renderAreaWithAnimation(needClip, clipPathId) {\n var _this2 = this;\n var _this$props5 = this.props,\n points = _this$props5.points,\n baseLine = _this$props5.baseLine,\n isAnimationActive = _this$props5.isAnimationActive,\n animationBegin = _this$props5.animationBegin,\n animationDuration = _this$props5.animationDuration,\n animationEasing = _this$props5.animationEasing,\n animationId = _this$props5.animationId;\n var _this$state = this.state,\n prevPoints = _this$state.prevPoints,\n prevBaseLine = _this$state.prevBaseLine;\n // const clipPathId = isNil(id) ? this.id : id;\n\n return /*#__PURE__*/React.createElement(Animate, {\n begin: animationBegin,\n duration: animationDuration,\n isActive: isAnimationActive,\n easing: animationEasing,\n from: {\n t: 0\n },\n to: {\n t: 1\n },\n key: \"area-\".concat(animationId),\n onAnimationEnd: this.handleAnimationEnd,\n onAnimationStart: this.handleAnimationStart\n }, function (_ref) {\n var t = _ref.t;\n if (prevPoints) {\n var prevPointsDiffFactor = prevPoints.length / points.length;\n // update animtaion\n var stepPoints = points.map(function (entry, index) {\n var prevPointIndex = Math.floor(index * prevPointsDiffFactor);\n if (prevPoints[prevPointIndex]) {\n var prev = prevPoints[prevPointIndex];\n var interpolatorX = interpolateNumber(prev.x, entry.x);\n var interpolatorY = interpolateNumber(prev.y, entry.y);\n return _objectSpread(_objectSpread({}, entry), {}, {\n x: interpolatorX(t),\n y: interpolatorY(t)\n });\n }\n return entry;\n });\n var stepBaseLine;\n if (isNumber(baseLine) && typeof baseLine === 'number') {\n var interpolator = interpolateNumber(prevBaseLine, baseLine);\n stepBaseLine = interpolator(t);\n } else if (isNil(baseLine) || isNan(baseLine)) {\n var _interpolator = interpolateNumber(prevBaseLine, 0);\n stepBaseLine = _interpolator(t);\n } else {\n stepBaseLine = baseLine.map(function (entry, index) {\n var prevPointIndex = Math.floor(index * prevPointsDiffFactor);\n if (prevBaseLine[prevPointIndex]) {\n var prev = prevBaseLine[prevPointIndex];\n var interpolatorX = interpolateNumber(prev.x, entry.x);\n var interpolatorY = interpolateNumber(prev.y, entry.y);\n return _objectSpread(_objectSpread({}, entry), {}, {\n x: interpolatorX(t),\n y: interpolatorY(t)\n });\n }\n return entry;\n });\n }\n return _this2.renderAreaStatically(stepPoints, stepBaseLine, needClip, clipPathId);\n }\n return /*#__PURE__*/React.createElement(Layer, null, /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"animationClipPath-\".concat(clipPathId)\n }, _this2.renderClipRect(t))), /*#__PURE__*/React.createElement(Layer, {\n clipPath: \"url(#animationClipPath-\".concat(clipPathId, \")\")\n }, _this2.renderAreaStatically(points, baseLine, needClip, clipPathId)));\n });\n }\n }, {\n key: \"renderArea\",\n value: function renderArea(needClip, clipPathId) {\n var _this$props6 = this.props,\n points = _this$props6.points,\n baseLine = _this$props6.baseLine,\n isAnimationActive = _this$props6.isAnimationActive;\n var _this$state2 = this.state,\n prevPoints = _this$state2.prevPoints,\n prevBaseLine = _this$state2.prevBaseLine,\n totalLength = _this$state2.totalLength;\n if (isAnimationActive && points && points.length && (!prevPoints && totalLength > 0 || !isEqual(prevPoints, points) || !isEqual(prevBaseLine, baseLine))) {\n return this.renderAreaWithAnimation(needClip, clipPathId);\n }\n return this.renderAreaStatically(points, baseLine, needClip, clipPathId);\n }\n }, {\n key: \"render\",\n value: function render() {\n var _filterProps;\n var _this$props7 = this.props,\n hide = _this$props7.hide,\n dot = _this$props7.dot,\n points = _this$props7.points,\n className = _this$props7.className,\n top = _this$props7.top,\n left = _this$props7.left,\n xAxis = _this$props7.xAxis,\n yAxis = _this$props7.yAxis,\n width = _this$props7.width,\n height = _this$props7.height,\n isAnimationActive = _this$props7.isAnimationActive,\n id = _this$props7.id;\n if (hide || !points || !points.length) {\n return null;\n }\n var isAnimationFinished = this.state.isAnimationFinished;\n var hasSinglePoint = points.length === 1;\n var layerClass = clsx('recharts-area', className);\n var needClipX = xAxis && xAxis.allowDataOverflow;\n var needClipY = yAxis && yAxis.allowDataOverflow;\n var needClip = needClipX || needClipY;\n var clipPathId = isNil(id) ? this.id : id;\n var _ref2 = (_filterProps = filterProps(dot, false)) !== null && _filterProps !== void 0 ? _filterProps : {\n r: 3,\n strokeWidth: 2\n },\n _ref2$r = _ref2.r,\n r = _ref2$r === void 0 ? 3 : _ref2$r,\n _ref2$strokeWidth = _ref2.strokeWidth,\n strokeWidth = _ref2$strokeWidth === void 0 ? 2 : _ref2$strokeWidth;\n var _ref3 = isDotProps(dot) ? dot : {},\n _ref3$clipDot = _ref3.clipDot,\n clipDot = _ref3$clipDot === void 0 ? true : _ref3$clipDot;\n var dotSize = r * 2 + strokeWidth;\n return /*#__PURE__*/React.createElement(Layer, {\n className: layerClass\n }, needClipX || needClipY ? /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"clipPath-\".concat(clipPathId)\n }, /*#__PURE__*/React.createElement(\"rect\", {\n x: needClipX ? left : left - width / 2,\n y: needClipY ? top : top - height / 2,\n width: needClipX ? width : width * 2,\n height: needClipY ? height : height * 2\n })), !clipDot && /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"clipPath-dots-\".concat(clipPathId)\n }, /*#__PURE__*/React.createElement(\"rect\", {\n x: left - dotSize / 2,\n y: top - dotSize / 2,\n width: width + dotSize,\n height: height + dotSize\n }))) : null, !hasSinglePoint ? this.renderArea(needClip, clipPathId) : null, (dot || hasSinglePoint) && this.renderDots(needClip, clipDot, clipPathId), (!isAnimationActive || isAnimationFinished) && LabelList.renderCallByParent(this.props, points));\n }\n }], [{\n key: \"getDerivedStateFromProps\",\n value: function getDerivedStateFromProps(nextProps, prevState) {\n if (nextProps.animationId !== prevState.prevAnimationId) {\n return {\n prevAnimationId: nextProps.animationId,\n curPoints: nextProps.points,\n curBaseLine: nextProps.baseLine,\n prevPoints: prevState.curPoints,\n prevBaseLine: prevState.curBaseLine\n };\n }\n if (nextProps.points !== prevState.curPoints || nextProps.baseLine !== prevState.curBaseLine) {\n return {\n curPoints: nextProps.points,\n curBaseLine: nextProps.baseLine\n };\n }\n return null;\n }\n }]);\n return Area;\n}(PureComponent);\n_Area = Area;\n_defineProperty(Area, \"displayName\", 'Area');\n_defineProperty(Area, \"defaultProps\", {\n stroke: '#3182bd',\n fill: '#3182bd',\n fillOpacity: 0.6,\n xAxisId: 0,\n yAxisId: 0,\n legendType: 'line',\n connectNulls: false,\n // points of area\n points: [],\n dot: false,\n activeDot: true,\n hide: false,\n isAnimationActive: !Global.isSsr,\n animationBegin: 0,\n animationDuration: 1500,\n animationEasing: 'ease'\n});\n_defineProperty(Area, \"getBaseValue\", function (props, item, xAxis, yAxis) {\n var layout = props.layout,\n chartBaseValue = props.baseValue;\n var itemBaseValue = item.props.baseValue;\n\n // The baseValue can be defined both on the AreaChart as well as on the Area.\n // The value for the item takes precedence.\n var baseValue = itemBaseValue !== null && itemBaseValue !== void 0 ? itemBaseValue : chartBaseValue;\n if (isNumber(baseValue) && typeof baseValue === 'number') {\n return baseValue;\n }\n var numericAxis = layout === 'horizontal' ? yAxis : xAxis;\n var domain = numericAxis.scale.domain();\n if (numericAxis.type === 'number') {\n var domainMax = Math.max(domain[0], domain[1]);\n var domainMin = Math.min(domain[0], domain[1]);\n if (baseValue === 'dataMin') {\n return domainMin;\n }\n if (baseValue === 'dataMax') {\n return domainMax;\n }\n return domainMax < 0 ? domainMax : Math.max(Math.min(domain[0], domain[1]), 0);\n }\n if (baseValue === 'dataMin') {\n return domain[0];\n }\n if (baseValue === 'dataMax') {\n return domain[1];\n }\n return domain[0];\n});\n_defineProperty(Area, \"getComposedData\", function (_ref4) {\n var props = _ref4.props,\n item = _ref4.item,\n xAxis = _ref4.xAxis,\n yAxis = _ref4.yAxis,\n xAxisTicks = _ref4.xAxisTicks,\n yAxisTicks = _ref4.yAxisTicks,\n bandSize = _ref4.bandSize,\n dataKey = _ref4.dataKey,\n stackedData = _ref4.stackedData,\n dataStartIndex = _ref4.dataStartIndex,\n displayedData = _ref4.displayedData,\n offset = _ref4.offset;\n var layout = props.layout;\n var hasStack = stackedData && stackedData.length;\n var baseValue = _Area.getBaseValue(props, item, xAxis, yAxis);\n var isHorizontalLayout = layout === 'horizontal';\n var isRange = false;\n var points = displayedData.map(function (entry, index) {\n var value;\n if (hasStack) {\n value = stackedData[dataStartIndex + index];\n } else {\n value = getValueByDataKey(entry, dataKey);\n if (!Array.isArray(value)) {\n value = [baseValue, value];\n } else {\n isRange = true;\n }\n }\n var isBreakPoint = value[1] == null || hasStack && getValueByDataKey(entry, dataKey) == null;\n if (isHorizontalLayout) {\n return {\n x: getCateCoordinateOfLine({\n axis: xAxis,\n ticks: xAxisTicks,\n bandSize: bandSize,\n entry: entry,\n index: index\n }),\n y: isBreakPoint ? null : yAxis.scale(value[1]),\n value: value,\n payload: entry\n };\n }\n return {\n x: isBreakPoint ? null : xAxis.scale(value[1]),\n y: getCateCoordinateOfLine({\n axis: yAxis,\n ticks: yAxisTicks,\n bandSize: bandSize,\n entry: entry,\n index: index\n }),\n value: value,\n payload: entry\n };\n });\n var baseLine;\n if (hasStack || isRange) {\n baseLine = points.map(function (entry) {\n var x = Array.isArray(entry.value) ? entry.value[0] : null;\n if (isHorizontalLayout) {\n return {\n x: entry.x,\n y: x != null && entry.y != null ? yAxis.scale(x) : null\n };\n }\n return {\n x: x != null ? xAxis.scale(x) : null,\n y: entry.y\n };\n });\n } else {\n baseLine = isHorizontalLayout ? yAxis.scale(baseValue) : xAxis.scale(baseValue);\n }\n return _objectSpread({\n points: points,\n baseLine: baseLine,\n layout: layout,\n isRange: isRange\n }, offset);\n});\n_defineProperty(Area, \"renderDotItem\", function (option, props) {\n var dotItem;\n if ( /*#__PURE__*/React.isValidElement(option)) {\n dotItem = /*#__PURE__*/React.cloneElement(option, props);\n } else if (isFunction(option)) {\n dotItem = option(props);\n } else {\n var className = clsx('recharts-area-dot', typeof option !== 'boolean' ? option.className : '');\n dotItem = /*#__PURE__*/React.createElement(Dot, _extends({}, props, {\n className: className\n }));\n }\n return dotItem;\n});","/**\n * @fileOverview Area Chart\n */\nimport { generateCategoricalChart } from './generateCategoricalChart';\nimport { Area } from '../cartesian/Area';\nimport { XAxis } from '../cartesian/XAxis';\nimport { YAxis } from '../cartesian/YAxis';\nimport { formatAxisMap } from '../util/CartesianUtils';\nexport var AreaChart = generateCategoricalChart({\n chartName: 'AreaChart',\n GraphicalChild: Area,\n axisComponents: [{\n axisType: 'xAxis',\n AxisComp: XAxis\n }, {\n axisType: 'yAxis',\n AxisComp: YAxis\n }],\n formatAxisMap: formatAxisMap\n});","function _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : String(i); }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _iterableToArrayLimit(r, l) { var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t[\"return\"] && (u = t[\"return\"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n/**\n * @fileOverview Wrapper component to make charts adapt to the size of parent * DOM\n */\nimport clsx from 'clsx';\nimport React, { forwardRef, cloneElement, useState, useImperativeHandle, useRef, useEffect, useMemo, useCallback } from 'react';\nimport throttle from 'lodash/throttle';\nimport { isElement } from 'react-is';\nimport { isPercent } from '../util/DataUtils';\nimport { warn } from '../util/LogUtils';\nimport { getDisplayName } from '../util/ReactUtils';\nexport var ResponsiveContainer = /*#__PURE__*/forwardRef(function (_ref, ref) {\n var aspect = _ref.aspect,\n _ref$initialDimension = _ref.initialDimension,\n initialDimension = _ref$initialDimension === void 0 ? {\n width: -1,\n height: -1\n } : _ref$initialDimension,\n _ref$width = _ref.width,\n width = _ref$width === void 0 ? '100%' : _ref$width,\n _ref$height = _ref.height,\n height = _ref$height === void 0 ? '100%' : _ref$height,\n _ref$minWidth = _ref.minWidth,\n minWidth = _ref$minWidth === void 0 ? 0 : _ref$minWidth,\n minHeight = _ref.minHeight,\n maxHeight = _ref.maxHeight,\n children = _ref.children,\n _ref$debounce = _ref.debounce,\n debounce = _ref$debounce === void 0 ? 0 : _ref$debounce,\n id = _ref.id,\n className = _ref.className,\n onResize = _ref.onResize,\n _ref$style = _ref.style,\n style = _ref$style === void 0 ? {} : _ref$style;\n var containerRef = useRef(null);\n var onResizeRef = useRef();\n onResizeRef.current = onResize;\n useImperativeHandle(ref, function () {\n return Object.defineProperty(containerRef.current, 'current', {\n get: function get() {\n // eslint-disable-next-line no-console\n console.warn('The usage of ref.current.current is deprecated and will no longer be supported.');\n return containerRef.current;\n },\n configurable: true\n });\n });\n var _useState = useState({\n containerWidth: initialDimension.width,\n containerHeight: initialDimension.height\n }),\n _useState2 = _slicedToArray(_useState, 2),\n sizes = _useState2[0],\n setSizes = _useState2[1];\n var setContainerSize = useCallback(function (newWidth, newHeight) {\n setSizes(function (prevState) {\n var roundedWidth = Math.round(newWidth);\n var roundedHeight = Math.round(newHeight);\n if (prevState.containerWidth === roundedWidth && prevState.containerHeight === roundedHeight) {\n return prevState;\n }\n return {\n containerWidth: roundedWidth,\n containerHeight: roundedHeight\n };\n });\n }, []);\n useEffect(function () {\n var callback = function callback(entries) {\n var _onResizeRef$current;\n var _entries$0$contentRec = entries[0].contentRect,\n containerWidth = _entries$0$contentRec.width,\n containerHeight = _entries$0$contentRec.height;\n setContainerSize(containerWidth, containerHeight);\n (_onResizeRef$current = onResizeRef.current) === null || _onResizeRef$current === void 0 || _onResizeRef$current.call(onResizeRef, containerWidth, containerHeight);\n };\n if (debounce > 0) {\n callback = throttle(callback, debounce, {\n trailing: true,\n leading: false\n });\n }\n var observer = new ResizeObserver(callback);\n var _containerRef$current = containerRef.current.getBoundingClientRect(),\n containerWidth = _containerRef$current.width,\n containerHeight = _containerRef$current.height;\n setContainerSize(containerWidth, containerHeight);\n observer.observe(containerRef.current);\n return function () {\n observer.disconnect();\n };\n }, [setContainerSize, debounce]);\n var chartContent = useMemo(function () {\n var containerWidth = sizes.containerWidth,\n containerHeight = sizes.containerHeight;\n if (containerWidth < 0 || containerHeight < 0) {\n return null;\n }\n warn(isPercent(width) || isPercent(height), \"The width(%s) and height(%s) are both fixed numbers,\\n maybe you don't need to use a ResponsiveContainer.\", width, height);\n warn(!aspect || aspect > 0, 'The aspect(%s) must be greater than zero.', aspect);\n var calculatedWidth = isPercent(width) ? containerWidth : width;\n var calculatedHeight = isPercent(height) ? containerHeight : height;\n if (aspect && aspect > 0) {\n // Preserve the desired aspect ratio\n if (calculatedWidth) {\n // Will default to using width for aspect ratio\n calculatedHeight = calculatedWidth / aspect;\n } else if (calculatedHeight) {\n // But we should also take height into consideration\n calculatedWidth = calculatedHeight * aspect;\n }\n\n // if maxHeight is set, overwrite if calculatedHeight is greater than maxHeight\n if (maxHeight && calculatedHeight > maxHeight) {\n calculatedHeight = maxHeight;\n }\n }\n warn(calculatedWidth > 0 || calculatedHeight > 0, \"The width(%s) and height(%s) of chart should be greater than 0,\\n please check the style of container, or the props width(%s) and height(%s),\\n or add a minWidth(%s) or minHeight(%s) or use aspect(%s) to control the\\n height and width.\", calculatedWidth, calculatedHeight, width, height, minWidth, minHeight, aspect);\n var isCharts = !Array.isArray(children) && isElement(children) && getDisplayName(children.type).endsWith('Chart');\n return React.Children.map(children, function (child) {\n if (isElement(child)) {\n return /*#__PURE__*/cloneElement(child, _objectSpread({\n width: calculatedWidth,\n height: calculatedHeight\n }, isCharts ? {\n style: _objectSpread({\n height: '100%',\n width: '100%',\n maxHeight: calculatedHeight,\n maxWidth: calculatedWidth\n }, child.props.style)\n } : {}));\n }\n return child;\n });\n }, [aspect, children, height, maxHeight, minHeight, minWidth, sizes, width]);\n return /*#__PURE__*/React.createElement(\"div\", {\n id: id ? \"\".concat(id) : undefined,\n className: clsx('recharts-responsive-container', className),\n style: _objectSpread(_objectSpread({}, style), {}, {\n width: width,\n height: height,\n minWidth: minWidth,\n minHeight: minHeight,\n maxHeight: maxHeight\n }),\n ref: containerRef\n }, chartContent);\n});"],"names":["_Area","_excluded","_typeof","o","Symbol","iterator","constructor","prototype","_objectWithoutProperties","source","excluded","key","i","target","sourceKeys","Object","keys","length","indexOf","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","propertyIsEnumerable","call","_extends","assign","bind","arguments","hasOwnProperty","apply","this","ownKeys","e","r","t","filter","getOwnPropertyDescriptor","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_defineProperties","props","descriptor","configurable","writable","_toPropertyKey","_callSuper","_getPrototypeOf","self","TypeError","_assertThisInitialized","_possibleConstructorReturn","_isNativeReflectConstruct","Reflect","construct","Boolean","valueOf","setPrototypeOf","getPrototypeOf","__proto__","ReferenceError","_setPrototypeOf","p","obj","value","toPrimitive","String","Number","_toPrimitive","Area","_PureComponent","_this","instance","Constructor","_classCallCheck","_len","args","Array","_key","concat","isAnimationFinished","uniqueId","onAnimationEnd","setState","isFunction","onAnimationStart","protoProps","staticProps","subClass","superClass","create","_inherits","nextProps","prevState","animationId","prevAnimationId","curPoints","points","curBaseLine","baseLine","prevPoints","prevBaseLine","needClip","clipDot","clipPathId","isAnimationActive","state","_this$props","dot","dataKey","areaProps","filterProps","customDotProps","dots","map","entry","dotProps","cx","x","cy","y","index","payload","renderDotItem","dotsProps","clipPath","React","Layer","className","alpha","_this$props2","strokeWidth","startX","endX","width","Math","abs","maxY","max","isNumber","isArray","height","floor","parseInt","_this$props3","startY","endY","maxX","layout","renderVerticalRect","renderHorizontalRect","_this$props4","type","stroke","connectNulls","isRange","others","ref","Curve","fill","_this2","_this$props5","animationBegin","animationDuration","animationEasing","_this$state","Animate","begin","duration","isActive","easing","from","to","handleAnimationEnd","handleAnimationStart","_ref","stepBaseLine","prevPointsDiffFactor","stepPoints","prevPointIndex","prev","interpolatorX","interpolateNumber","interpolatorY","interpolator","isNil","isNan","_interpolator","renderAreaStatically","id","renderClipRect","_this$props6","_this$state2","totalLength","isEqual","renderAreaWithAnimation","_filterProps","_this$props7","hide","top","left","xAxis","yAxis","hasSinglePoint","layerClass","clsx","needClipX","allowDataOverflow","needClipY","_ref2","_ref2$r","_ref2$strokeWidth","_ref3$clipDot","isDotProps","dotSize","renderArea","renderDots","LabelList","renderCallByParent","PureComponent","fillOpacity","xAxisId","yAxisId","legendType","activeDot","Global","isSsr","item","chartBaseValue","baseValue","itemBaseValue","numericAxis","domain","scale","domainMax","domainMin","min","_ref4","xAxisTicks","yAxisTicks","bandSize","stackedData","dataStartIndex","displayedData","offset","hasStack","getBaseValue","isHorizontalLayout","getValueByDataKey","isBreakPoint","getCateCoordinateOfLine","axis","ticks","option","dotItem","Dot","AreaChart","generateCategoricalChart","chartName","GraphicalChild","axisComponents","axisType","AxisComp","XAxis","YAxis","formatAxisMap","_slicedToArray","arr","_arrayWithHoles","l","n","u","a","f","next","done","_iterableToArrayLimit","minLen","_arrayLikeToArray","toString","slice","name","test","_unsupportedIterableToArray","_nonIterableRest","len","arr2","ResponsiveContainer","forwardRef","aspect","_ref$initialDimension","initialDimension","_ref$width","_ref$height","_ref$minWidth","minWidth","minHeight","maxHeight","children","_ref$debounce","debounce","onResize","_ref$style","style","containerRef","useRef","onResizeRef","current","useImperativeHandle","get","console","warn","_useState2","useState","containerWidth","containerHeight","sizes","setSizes","setContainerSize","useCallback","newWidth","newHeight","roundedWidth","round","roundedHeight","useEffect","callback","entries","_onResizeRef$current","_entries$0$contentRec","contentRect","throttle","trailing","leading","observer","ResizeObserver","_containerRef$current","getBoundingClientRect","observe","disconnect","chartContent","useMemo","isPercent","calculatedWidth","calculatedHeight","isCharts","isElement","getDisplayName","endsWith","child","cloneElement","maxWidth","undefined"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"static/js/6016.3475b798.chunk.js","mappings":"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","sources":["../node_modules/recharts/es6/cartesian/Area.js","../node_modules/recharts/es6/chart/AreaChart.js","../node_modules/recharts/es6/component/ResponsiveContainer.js"],"sourcesContent":["var _excluded = [\"layout\", \"type\", \"stroke\", \"connectNulls\", \"isRange\", \"ref\"];\nvar _Area;\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\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; }\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; }\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\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, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }\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); }\nfunction _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\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); }\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : String(i); }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\n/**\n * @fileOverview Area\n */\nimport React, { PureComponent } from 'react';\nimport clsx from 'clsx';\nimport Animate from 'react-smooth';\nimport isFunction from 'lodash/isFunction';\nimport max from 'lodash/max';\nimport isNil from 'lodash/isNil';\nimport isNan from 'lodash/isNaN';\nimport isEqual from 'lodash/isEqual';\nimport { Curve } from '../shape/Curve';\nimport { Dot } from '../shape/Dot';\nimport { Layer } from '../container/Layer';\nimport { LabelList } from '../component/LabelList';\nimport { Global } from '../util/Global';\nimport { isNumber, uniqueId, interpolateNumber } from '../util/DataUtils';\nimport { getCateCoordinateOfLine, getValueByDataKey } from '../util/ChartUtils';\nimport { filterProps, isDotProps } from '../util/ReactUtils';\nexport var Area = /*#__PURE__*/function (_PureComponent) {\n _inherits(Area, _PureComponent);\n function Area() {\n var _this;\n _classCallCheck(this, Area);\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n _this = _callSuper(this, Area, [].concat(args));\n _defineProperty(_assertThisInitialized(_this), \"state\", {\n isAnimationFinished: true\n });\n _defineProperty(_assertThisInitialized(_this), \"id\", uniqueId('recharts-area-'));\n _defineProperty(_assertThisInitialized(_this), \"handleAnimationEnd\", function () {\n var onAnimationEnd = _this.props.onAnimationEnd;\n _this.setState({\n isAnimationFinished: true\n });\n if (isFunction(onAnimationEnd)) {\n onAnimationEnd();\n }\n });\n _defineProperty(_assertThisInitialized(_this), \"handleAnimationStart\", function () {\n var onAnimationStart = _this.props.onAnimationStart;\n _this.setState({\n isAnimationFinished: false\n });\n if (isFunction(onAnimationStart)) {\n onAnimationStart();\n }\n });\n return _this;\n }\n _createClass(Area, [{\n key: \"renderDots\",\n value: function renderDots(needClip, clipDot, clipPathId) {\n var isAnimationActive = this.props.isAnimationActive;\n var isAnimationFinished = this.state.isAnimationFinished;\n if (isAnimationActive && !isAnimationFinished) {\n return null;\n }\n var _this$props = this.props,\n dot = _this$props.dot,\n points = _this$props.points,\n dataKey = _this$props.dataKey;\n var areaProps = filterProps(this.props, false);\n var customDotProps = filterProps(dot, true);\n var dots = points.map(function (entry, i) {\n var dotProps = _objectSpread(_objectSpread(_objectSpread({\n key: \"dot-\".concat(i),\n r: 3\n }, areaProps), customDotProps), {}, {\n dataKey: dataKey,\n cx: entry.x,\n cy: entry.y,\n index: i,\n value: entry.value,\n payload: entry.payload\n });\n return Area.renderDotItem(dot, dotProps);\n });\n var dotsProps = {\n clipPath: needClip ? \"url(#clipPath-\".concat(clipDot ? '' : 'dots-').concat(clipPathId, \")\") : null\n };\n return /*#__PURE__*/React.createElement(Layer, _extends({\n className: \"recharts-area-dots\"\n }, dotsProps), dots);\n }\n }, {\n key: \"renderHorizontalRect\",\n value: function renderHorizontalRect(alpha) {\n var _this$props2 = this.props,\n baseLine = _this$props2.baseLine,\n points = _this$props2.points,\n strokeWidth = _this$props2.strokeWidth;\n var startX = points[0].x;\n var endX = points[points.length - 1].x;\n var width = alpha * Math.abs(startX - endX);\n var maxY = max(points.map(function (entry) {\n return entry.y || 0;\n }));\n if (isNumber(baseLine) && typeof baseLine === 'number') {\n maxY = Math.max(baseLine, maxY);\n } else if (baseLine && Array.isArray(baseLine) && baseLine.length) {\n maxY = Math.max(max(baseLine.map(function (entry) {\n return entry.y || 0;\n })), maxY);\n }\n if (isNumber(maxY)) {\n return /*#__PURE__*/React.createElement(\"rect\", {\n x: startX < endX ? startX : startX - width,\n y: 0,\n width: width,\n height: Math.floor(maxY + (strokeWidth ? parseInt(\"\".concat(strokeWidth), 10) : 1))\n });\n }\n return null;\n }\n }, {\n key: \"renderVerticalRect\",\n value: function renderVerticalRect(alpha) {\n var _this$props3 = this.props,\n baseLine = _this$props3.baseLine,\n points = _this$props3.points,\n strokeWidth = _this$props3.strokeWidth;\n var startY = points[0].y;\n var endY = points[points.length - 1].y;\n var height = alpha * Math.abs(startY - endY);\n var maxX = max(points.map(function (entry) {\n return entry.x || 0;\n }));\n if (isNumber(baseLine) && typeof baseLine === 'number') {\n maxX = Math.max(baseLine, maxX);\n } else if (baseLine && Array.isArray(baseLine) && baseLine.length) {\n maxX = Math.max(max(baseLine.map(function (entry) {\n return entry.x || 0;\n })), maxX);\n }\n if (isNumber(maxX)) {\n return /*#__PURE__*/React.createElement(\"rect\", {\n x: 0,\n y: startY < endY ? startY : startY - height,\n width: maxX + (strokeWidth ? parseInt(\"\".concat(strokeWidth), 10) : 1),\n height: Math.floor(height)\n });\n }\n return null;\n }\n }, {\n key: \"renderClipRect\",\n value: function renderClipRect(alpha) {\n var layout = this.props.layout;\n if (layout === 'vertical') {\n return this.renderVerticalRect(alpha);\n }\n return this.renderHorizontalRect(alpha);\n }\n }, {\n key: \"renderAreaStatically\",\n value: function renderAreaStatically(points, baseLine, needClip, clipPathId) {\n var _this$props4 = this.props,\n layout = _this$props4.layout,\n type = _this$props4.type,\n stroke = _this$props4.stroke,\n connectNulls = _this$props4.connectNulls,\n isRange = _this$props4.isRange,\n ref = _this$props4.ref,\n others = _objectWithoutProperties(_this$props4, _excluded);\n return /*#__PURE__*/React.createElement(Layer, {\n clipPath: needClip ? \"url(#clipPath-\".concat(clipPathId, \")\") : null\n }, /*#__PURE__*/React.createElement(Curve, _extends({}, filterProps(others, true), {\n points: points,\n connectNulls: connectNulls,\n type: type,\n baseLine: baseLine,\n layout: layout,\n stroke: \"none\",\n className: \"recharts-area-area\"\n })), stroke !== 'none' && /*#__PURE__*/React.createElement(Curve, _extends({}, filterProps(this.props, false), {\n className: \"recharts-area-curve\",\n layout: layout,\n type: type,\n connectNulls: connectNulls,\n fill: \"none\",\n points: points\n })), stroke !== 'none' && isRange && /*#__PURE__*/React.createElement(Curve, _extends({}, filterProps(this.props, false), {\n className: \"recharts-area-curve\",\n layout: layout,\n type: type,\n connectNulls: connectNulls,\n fill: \"none\",\n points: baseLine\n })));\n }\n }, {\n key: \"renderAreaWithAnimation\",\n value: function renderAreaWithAnimation(needClip, clipPathId) {\n var _this2 = this;\n var _this$props5 = this.props,\n points = _this$props5.points,\n baseLine = _this$props5.baseLine,\n isAnimationActive = _this$props5.isAnimationActive,\n animationBegin = _this$props5.animationBegin,\n animationDuration = _this$props5.animationDuration,\n animationEasing = _this$props5.animationEasing,\n animationId = _this$props5.animationId;\n var _this$state = this.state,\n prevPoints = _this$state.prevPoints,\n prevBaseLine = _this$state.prevBaseLine;\n // const clipPathId = isNil(id) ? this.id : id;\n\n return /*#__PURE__*/React.createElement(Animate, {\n begin: animationBegin,\n duration: animationDuration,\n isActive: isAnimationActive,\n easing: animationEasing,\n from: {\n t: 0\n },\n to: {\n t: 1\n },\n key: \"area-\".concat(animationId),\n onAnimationEnd: this.handleAnimationEnd,\n onAnimationStart: this.handleAnimationStart\n }, function (_ref) {\n var t = _ref.t;\n if (prevPoints) {\n var prevPointsDiffFactor = prevPoints.length / points.length;\n // update animtaion\n var stepPoints = points.map(function (entry, index) {\n var prevPointIndex = Math.floor(index * prevPointsDiffFactor);\n if (prevPoints[prevPointIndex]) {\n var prev = prevPoints[prevPointIndex];\n var interpolatorX = interpolateNumber(prev.x, entry.x);\n var interpolatorY = interpolateNumber(prev.y, entry.y);\n return _objectSpread(_objectSpread({}, entry), {}, {\n x: interpolatorX(t),\n y: interpolatorY(t)\n });\n }\n return entry;\n });\n var stepBaseLine;\n if (isNumber(baseLine) && typeof baseLine === 'number') {\n var interpolator = interpolateNumber(prevBaseLine, baseLine);\n stepBaseLine = interpolator(t);\n } else if (isNil(baseLine) || isNan(baseLine)) {\n var _interpolator = interpolateNumber(prevBaseLine, 0);\n stepBaseLine = _interpolator(t);\n } else {\n stepBaseLine = baseLine.map(function (entry, index) {\n var prevPointIndex = Math.floor(index * prevPointsDiffFactor);\n if (prevBaseLine[prevPointIndex]) {\n var prev = prevBaseLine[prevPointIndex];\n var interpolatorX = interpolateNumber(prev.x, entry.x);\n var interpolatorY = interpolateNumber(prev.y, entry.y);\n return _objectSpread(_objectSpread({}, entry), {}, {\n x: interpolatorX(t),\n y: interpolatorY(t)\n });\n }\n return entry;\n });\n }\n return _this2.renderAreaStatically(stepPoints, stepBaseLine, needClip, clipPathId);\n }\n return /*#__PURE__*/React.createElement(Layer, null, /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"animationClipPath-\".concat(clipPathId)\n }, _this2.renderClipRect(t))), /*#__PURE__*/React.createElement(Layer, {\n clipPath: \"url(#animationClipPath-\".concat(clipPathId, \")\")\n }, _this2.renderAreaStatically(points, baseLine, needClip, clipPathId)));\n });\n }\n }, {\n key: \"renderArea\",\n value: function renderArea(needClip, clipPathId) {\n var _this$props6 = this.props,\n points = _this$props6.points,\n baseLine = _this$props6.baseLine,\n isAnimationActive = _this$props6.isAnimationActive;\n var _this$state2 = this.state,\n prevPoints = _this$state2.prevPoints,\n prevBaseLine = _this$state2.prevBaseLine,\n totalLength = _this$state2.totalLength;\n if (isAnimationActive && points && points.length && (!prevPoints && totalLength > 0 || !isEqual(prevPoints, points) || !isEqual(prevBaseLine, baseLine))) {\n return this.renderAreaWithAnimation(needClip, clipPathId);\n }\n return this.renderAreaStatically(points, baseLine, needClip, clipPathId);\n }\n }, {\n key: \"render\",\n value: function render() {\n var _filterProps;\n var _this$props7 = this.props,\n hide = _this$props7.hide,\n dot = _this$props7.dot,\n points = _this$props7.points,\n className = _this$props7.className,\n top = _this$props7.top,\n left = _this$props7.left,\n xAxis = _this$props7.xAxis,\n yAxis = _this$props7.yAxis,\n width = _this$props7.width,\n height = _this$props7.height,\n isAnimationActive = _this$props7.isAnimationActive,\n id = _this$props7.id;\n if (hide || !points || !points.length) {\n return null;\n }\n var isAnimationFinished = this.state.isAnimationFinished;\n var hasSinglePoint = points.length === 1;\n var layerClass = clsx('recharts-area', className);\n var needClipX = xAxis && xAxis.allowDataOverflow;\n var needClipY = yAxis && yAxis.allowDataOverflow;\n var needClip = needClipX || needClipY;\n var clipPathId = isNil(id) ? this.id : id;\n var _ref2 = (_filterProps = filterProps(dot, false)) !== null && _filterProps !== void 0 ? _filterProps : {\n r: 3,\n strokeWidth: 2\n },\n _ref2$r = _ref2.r,\n r = _ref2$r === void 0 ? 3 : _ref2$r,\n _ref2$strokeWidth = _ref2.strokeWidth,\n strokeWidth = _ref2$strokeWidth === void 0 ? 2 : _ref2$strokeWidth;\n var _ref3 = isDotProps(dot) ? dot : {},\n _ref3$clipDot = _ref3.clipDot,\n clipDot = _ref3$clipDot === void 0 ? true : _ref3$clipDot;\n var dotSize = r * 2 + strokeWidth;\n return /*#__PURE__*/React.createElement(Layer, {\n className: layerClass\n }, needClipX || needClipY ? /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"clipPath-\".concat(clipPathId)\n }, /*#__PURE__*/React.createElement(\"rect\", {\n x: needClipX ? left : left - width / 2,\n y: needClipY ? top : top - height / 2,\n width: needClipX ? width : width * 2,\n height: needClipY ? height : height * 2\n })), !clipDot && /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"clipPath-dots-\".concat(clipPathId)\n }, /*#__PURE__*/React.createElement(\"rect\", {\n x: left - dotSize / 2,\n y: top - dotSize / 2,\n width: width + dotSize,\n height: height + dotSize\n }))) : null, !hasSinglePoint ? this.renderArea(needClip, clipPathId) : null, (dot || hasSinglePoint) && this.renderDots(needClip, clipDot, clipPathId), (!isAnimationActive || isAnimationFinished) && LabelList.renderCallByParent(this.props, points));\n }\n }], [{\n key: \"getDerivedStateFromProps\",\n value: function getDerivedStateFromProps(nextProps, prevState) {\n if (nextProps.animationId !== prevState.prevAnimationId) {\n return {\n prevAnimationId: nextProps.animationId,\n curPoints: nextProps.points,\n curBaseLine: nextProps.baseLine,\n prevPoints: prevState.curPoints,\n prevBaseLine: prevState.curBaseLine\n };\n }\n if (nextProps.points !== prevState.curPoints || nextProps.baseLine !== prevState.curBaseLine) {\n return {\n curPoints: nextProps.points,\n curBaseLine: nextProps.baseLine\n };\n }\n return null;\n }\n }]);\n return Area;\n}(PureComponent);\n_Area = Area;\n_defineProperty(Area, \"displayName\", 'Area');\n_defineProperty(Area, \"defaultProps\", {\n stroke: '#3182bd',\n fill: '#3182bd',\n fillOpacity: 0.6,\n xAxisId: 0,\n yAxisId: 0,\n legendType: 'line',\n connectNulls: false,\n // points of area\n points: [],\n dot: false,\n activeDot: true,\n hide: false,\n isAnimationActive: !Global.isSsr,\n animationBegin: 0,\n animationDuration: 1500,\n animationEasing: 'ease'\n});\n_defineProperty(Area, \"getBaseValue\", function (props, item, xAxis, yAxis) {\n var layout = props.layout,\n chartBaseValue = props.baseValue;\n var itemBaseValue = item.props.baseValue;\n\n // The baseValue can be defined both on the AreaChart as well as on the Area.\n // The value for the item takes precedence.\n var baseValue = itemBaseValue !== null && itemBaseValue !== void 0 ? itemBaseValue : chartBaseValue;\n if (isNumber(baseValue) && typeof baseValue === 'number') {\n return baseValue;\n }\n var numericAxis = layout === 'horizontal' ? yAxis : xAxis;\n var domain = numericAxis.scale.domain();\n if (numericAxis.type === 'number') {\n var domainMax = Math.max(domain[0], domain[1]);\n var domainMin = Math.min(domain[0], domain[1]);\n if (baseValue === 'dataMin') {\n return domainMin;\n }\n if (baseValue === 'dataMax') {\n return domainMax;\n }\n return domainMax < 0 ? domainMax : Math.max(Math.min(domain[0], domain[1]), 0);\n }\n if (baseValue === 'dataMin') {\n return domain[0];\n }\n if (baseValue === 'dataMax') {\n return domain[1];\n }\n return domain[0];\n});\n_defineProperty(Area, \"getComposedData\", function (_ref4) {\n var props = _ref4.props,\n item = _ref4.item,\n xAxis = _ref4.xAxis,\n yAxis = _ref4.yAxis,\n xAxisTicks = _ref4.xAxisTicks,\n yAxisTicks = _ref4.yAxisTicks,\n bandSize = _ref4.bandSize,\n dataKey = _ref4.dataKey,\n stackedData = _ref4.stackedData,\n dataStartIndex = _ref4.dataStartIndex,\n displayedData = _ref4.displayedData,\n offset = _ref4.offset;\n var layout = props.layout;\n var hasStack = stackedData && stackedData.length;\n var baseValue = _Area.getBaseValue(props, item, xAxis, yAxis);\n var isHorizontalLayout = layout === 'horizontal';\n var isRange = false;\n var points = displayedData.map(function (entry, index) {\n var value;\n if (hasStack) {\n value = stackedData[dataStartIndex + index];\n } else {\n value = getValueByDataKey(entry, dataKey);\n if (!Array.isArray(value)) {\n value = [baseValue, value];\n } else {\n isRange = true;\n }\n }\n var isBreakPoint = value[1] == null || hasStack && getValueByDataKey(entry, dataKey) == null;\n if (isHorizontalLayout) {\n return {\n x: getCateCoordinateOfLine({\n axis: xAxis,\n ticks: xAxisTicks,\n bandSize: bandSize,\n entry: entry,\n index: index\n }),\n y: isBreakPoint ? null : yAxis.scale(value[1]),\n value: value,\n payload: entry\n };\n }\n return {\n x: isBreakPoint ? null : xAxis.scale(value[1]),\n y: getCateCoordinateOfLine({\n axis: yAxis,\n ticks: yAxisTicks,\n bandSize: bandSize,\n entry: entry,\n index: index\n }),\n value: value,\n payload: entry\n };\n });\n var baseLine;\n if (hasStack || isRange) {\n baseLine = points.map(function (entry) {\n var x = Array.isArray(entry.value) ? entry.value[0] : null;\n if (isHorizontalLayout) {\n return {\n x: entry.x,\n y: x != null && entry.y != null ? yAxis.scale(x) : null\n };\n }\n return {\n x: x != null ? xAxis.scale(x) : null,\n y: entry.y\n };\n });\n } else {\n baseLine = isHorizontalLayout ? yAxis.scale(baseValue) : xAxis.scale(baseValue);\n }\n return _objectSpread({\n points: points,\n baseLine: baseLine,\n layout: layout,\n isRange: isRange\n }, offset);\n});\n_defineProperty(Area, \"renderDotItem\", function (option, props) {\n var dotItem;\n if ( /*#__PURE__*/React.isValidElement(option)) {\n dotItem = /*#__PURE__*/React.cloneElement(option, props);\n } else if (isFunction(option)) {\n dotItem = option(props);\n } else {\n var className = clsx('recharts-area-dot', typeof option !== 'boolean' ? option.className : '');\n dotItem = /*#__PURE__*/React.createElement(Dot, _extends({}, props, {\n className: className\n }));\n }\n return dotItem;\n});","/**\n * @fileOverview Area Chart\n */\nimport { generateCategoricalChart } from './generateCategoricalChart';\nimport { Area } from '../cartesian/Area';\nimport { XAxis } from '../cartesian/XAxis';\nimport { YAxis } from '../cartesian/YAxis';\nimport { formatAxisMap } from '../util/CartesianUtils';\nexport var AreaChart = generateCategoricalChart({\n chartName: 'AreaChart',\n GraphicalChild: Area,\n axisComponents: [{\n axisType: 'xAxis',\n AxisComp: XAxis\n }, {\n axisType: 'yAxis',\n AxisComp: YAxis\n }],\n formatAxisMap: formatAxisMap\n});","function _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : String(i); }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _iterableToArrayLimit(r, l) { var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t[\"return\"] && (u = t[\"return\"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n/**\n * @fileOverview Wrapper component to make charts adapt to the size of parent * DOM\n */\nimport clsx from 'clsx';\nimport React, { forwardRef, cloneElement, useState, useImperativeHandle, useRef, useEffect, useMemo, useCallback } from 'react';\nimport throttle from 'lodash/throttle';\nimport { isElement } from 'react-is';\nimport { isPercent } from '../util/DataUtils';\nimport { warn } from '../util/LogUtils';\nimport { getDisplayName } from '../util/ReactUtils';\nexport var ResponsiveContainer = /*#__PURE__*/forwardRef(function (_ref, ref) {\n var aspect = _ref.aspect,\n _ref$initialDimension = _ref.initialDimension,\n initialDimension = _ref$initialDimension === void 0 ? {\n width: -1,\n height: -1\n } : _ref$initialDimension,\n _ref$width = _ref.width,\n width = _ref$width === void 0 ? '100%' : _ref$width,\n _ref$height = _ref.height,\n height = _ref$height === void 0 ? '100%' : _ref$height,\n _ref$minWidth = _ref.minWidth,\n minWidth = _ref$minWidth === void 0 ? 0 : _ref$minWidth,\n minHeight = _ref.minHeight,\n maxHeight = _ref.maxHeight,\n children = _ref.children,\n _ref$debounce = _ref.debounce,\n debounce = _ref$debounce === void 0 ? 0 : _ref$debounce,\n id = _ref.id,\n className = _ref.className,\n onResize = _ref.onResize,\n _ref$style = _ref.style,\n style = _ref$style === void 0 ? {} : _ref$style;\n var containerRef = useRef(null);\n var onResizeRef = useRef();\n onResizeRef.current = onResize;\n useImperativeHandle(ref, function () {\n return Object.defineProperty(containerRef.current, 'current', {\n get: function get() {\n // eslint-disable-next-line no-console\n console.warn('The usage of ref.current.current is deprecated and will no longer be supported.');\n return containerRef.current;\n },\n configurable: true\n });\n });\n var _useState = useState({\n containerWidth: initialDimension.width,\n containerHeight: initialDimension.height\n }),\n _useState2 = _slicedToArray(_useState, 2),\n sizes = _useState2[0],\n setSizes = _useState2[1];\n var setContainerSize = useCallback(function (newWidth, newHeight) {\n setSizes(function (prevState) {\n var roundedWidth = Math.round(newWidth);\n var roundedHeight = Math.round(newHeight);\n if (prevState.containerWidth === roundedWidth && prevState.containerHeight === roundedHeight) {\n return prevState;\n }\n return {\n containerWidth: roundedWidth,\n containerHeight: roundedHeight\n };\n });\n }, []);\n useEffect(function () {\n var callback = function callback(entries) {\n var _onResizeRef$current;\n var _entries$0$contentRec = entries[0].contentRect,\n containerWidth = _entries$0$contentRec.width,\n containerHeight = _entries$0$contentRec.height;\n setContainerSize(containerWidth, containerHeight);\n (_onResizeRef$current = onResizeRef.current) === null || _onResizeRef$current === void 0 || _onResizeRef$current.call(onResizeRef, containerWidth, containerHeight);\n };\n if (debounce > 0) {\n callback = throttle(callback, debounce, {\n trailing: true,\n leading: false\n });\n }\n var observer = new ResizeObserver(callback);\n var _containerRef$current = containerRef.current.getBoundingClientRect(),\n containerWidth = _containerRef$current.width,\n containerHeight = _containerRef$current.height;\n setContainerSize(containerWidth, containerHeight);\n observer.observe(containerRef.current);\n return function () {\n observer.disconnect();\n };\n }, [setContainerSize, debounce]);\n var chartContent = useMemo(function () {\n var containerWidth = sizes.containerWidth,\n containerHeight = sizes.containerHeight;\n if (containerWidth < 0 || containerHeight < 0) {\n return null;\n }\n warn(isPercent(width) || isPercent(height), \"The width(%s) and height(%s) are both fixed numbers,\\n maybe you don't need to use a ResponsiveContainer.\", width, height);\n warn(!aspect || aspect > 0, 'The aspect(%s) must be greater than zero.', aspect);\n var calculatedWidth = isPercent(width) ? containerWidth : width;\n var calculatedHeight = isPercent(height) ? containerHeight : height;\n if (aspect && aspect > 0) {\n // Preserve the desired aspect ratio\n if (calculatedWidth) {\n // Will default to using width for aspect ratio\n calculatedHeight = calculatedWidth / aspect;\n } else if (calculatedHeight) {\n // But we should also take height into consideration\n calculatedWidth = calculatedHeight * aspect;\n }\n\n // if maxHeight is set, overwrite if calculatedHeight is greater than maxHeight\n if (maxHeight && calculatedHeight > maxHeight) {\n calculatedHeight = maxHeight;\n }\n }\n warn(calculatedWidth > 0 || calculatedHeight > 0, \"The width(%s) and height(%s) of chart should be greater than 0,\\n please check the style of container, or the props width(%s) and height(%s),\\n or add a minWidth(%s) or minHeight(%s) or use aspect(%s) to control the\\n height and width.\", calculatedWidth, calculatedHeight, width, height, minWidth, minHeight, aspect);\n var isCharts = !Array.isArray(children) && isElement(children) && getDisplayName(children.type).endsWith('Chart');\n return React.Children.map(children, function (child) {\n if (isElement(child)) {\n return /*#__PURE__*/cloneElement(child, _objectSpread({\n width: calculatedWidth,\n height: calculatedHeight\n }, isCharts ? {\n style: _objectSpread({\n height: '100%',\n width: '100%',\n maxHeight: calculatedHeight,\n maxWidth: calculatedWidth\n }, child.props.style)\n } : {}));\n }\n return child;\n });\n }, [aspect, children, height, maxHeight, minHeight, minWidth, sizes, width]);\n return /*#__PURE__*/React.createElement(\"div\", {\n id: id ? \"\".concat(id) : undefined,\n className: clsx('recharts-responsive-container', className),\n style: _objectSpread(_objectSpread({}, style), {}, {\n width: width,\n height: height,\n minWidth: minWidth,\n minHeight: minHeight,\n maxHeight: maxHeight\n }),\n ref: containerRef\n }, chartContent);\n});"],"names":["_Area","_excluded","_typeof","o","Symbol","iterator","constructor","prototype","_objectWithoutProperties","source","excluded","key","i","target","sourceKeys","Object","keys","length","indexOf","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","propertyIsEnumerable","call","_extends","assign","bind","arguments","hasOwnProperty","apply","this","ownKeys","e","r","t","filter","getOwnPropertyDescriptor","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_defineProperties","props","descriptor","configurable","writable","_toPropertyKey","_callSuper","_getPrototypeOf","self","TypeError","_assertThisInitialized","_possibleConstructorReturn","_isNativeReflectConstruct","Reflect","construct","Boolean","valueOf","setPrototypeOf","getPrototypeOf","__proto__","ReferenceError","_setPrototypeOf","p","obj","value","toPrimitive","String","Number","_toPrimitive","Area","_PureComponent","_this","instance","Constructor","_classCallCheck","_len","args","Array","_key","concat","isAnimationFinished","uniqueId","onAnimationEnd","setState","isFunction","onAnimationStart","protoProps","staticProps","subClass","superClass","create","_inherits","nextProps","prevState","animationId","prevAnimationId","curPoints","points","curBaseLine","baseLine","prevPoints","prevBaseLine","needClip","clipDot","clipPathId","isAnimationActive","state","_this$props","dot","dataKey","areaProps","filterProps","customDotProps","dots","map","entry","dotProps","cx","x","cy","y","index","payload","renderDotItem","dotsProps","clipPath","React","Layer","className","alpha","_this$props2","strokeWidth","startX","endX","width","Math","abs","maxY","max","isNumber","isArray","height","floor","parseInt","_this$props3","startY","endY","maxX","layout","renderVerticalRect","renderHorizontalRect","_this$props4","type","stroke","connectNulls","isRange","others","ref","Curve","fill","_this2","_this$props5","animationBegin","animationDuration","animationEasing","_this$state","Animate","begin","duration","isActive","easing","from","to","handleAnimationEnd","handleAnimationStart","_ref","stepBaseLine","prevPointsDiffFactor","stepPoints","prevPointIndex","prev","interpolatorX","interpolateNumber","interpolatorY","interpolator","isNil","isNan","_interpolator","renderAreaStatically","id","renderClipRect","_this$props6","_this$state2","totalLength","isEqual","renderAreaWithAnimation","_filterProps","_this$props7","hide","top","left","xAxis","yAxis","hasSinglePoint","layerClass","clsx","needClipX","allowDataOverflow","needClipY","_ref2","_ref2$r","_ref2$strokeWidth","_ref3$clipDot","isDotProps","dotSize","renderArea","renderDots","LabelList","renderCallByParent","PureComponent","fillOpacity","xAxisId","yAxisId","legendType","activeDot","Global","isSsr","item","chartBaseValue","baseValue","itemBaseValue","numericAxis","domain","scale","domainMax","domainMin","min","_ref4","xAxisTicks","yAxisTicks","bandSize","stackedData","dataStartIndex","displayedData","offset","hasStack","getBaseValue","isHorizontalLayout","getValueByDataKey","isBreakPoint","getCateCoordinateOfLine","axis","ticks","option","dotItem","Dot","AreaChart","generateCategoricalChart","chartName","GraphicalChild","axisComponents","axisType","AxisComp","XAxis","YAxis","formatAxisMap","_slicedToArray","arr","_arrayWithHoles","l","n","u","a","f","next","done","_iterableToArrayLimit","minLen","_arrayLikeToArray","toString","slice","name","test","_unsupportedIterableToArray","_nonIterableRest","len","arr2","ResponsiveContainer","forwardRef","aspect","_ref$initialDimension","initialDimension","_ref$width","_ref$height","_ref$minWidth","minWidth","minHeight","maxHeight","children","_ref$debounce","debounce","onResize","_ref$style","style","containerRef","useRef","onResizeRef","current","useImperativeHandle","get","console","warn","_useState2","useState","containerWidth","containerHeight","sizes","setSizes","setContainerSize","useCallback","newWidth","newHeight","roundedWidth","round","roundedHeight","useEffect","callback","entries","_onResizeRef$current","_entries$0$contentRec","contentRect","throttle","trailing","leading","observer","ResizeObserver","_containerRef$current","getBoundingClientRect","observe","disconnect","chartContent","useMemo","isPercent","calculatedWidth","calculatedHeight","isCharts","isElement","getDisplayName","endsWith","child","cloneElement","maxWidth","undefined"],"sourceRoot":""} \ No newline at end of file diff --git a/web-app/build/static/js/7880.6f98d22b.chunk.js b/web-app/build/static/js/7880.6f98d22b.chunk.js deleted file mode 100644 index 610fa8cd13..0000000000 --- a/web-app/build/static/js/7880.6f98d22b.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkweb_app=self.webpackChunkweb_app||[]).push([[7880],{7880:(e,t,a)=>{a.r(t),a.d(t,{default:()=>y});var n=a(65043),l=a(73216),i=a(89923),s=a(99161),r=a(64159),c=a(20554),o=a(48793),d=a(92452),u=a(56629),h=a(53518),p=a(96512),g=a(56483),x=a(33097),m=a.n(x),b=a(23758),j=a(70579);const y=()=>{const e=(0,c.jL)(),t=(0,l.Zp)();let a=new URLSearchParams(document.location.search);const x=a.get("bucketName")||"",y=a.get("nextPriority")||"1",[v,f]=(0,n.useState)(!1),[S,C]=(0,n.useState)(y),[k,w]=(0,n.useState)(""),[R,E]=(0,n.useState)(""),[A,B]=(0,n.useState)(""),[T,_]=(0,n.useState)(""),[I,D]=(0,n.useState)(""),[M,O]=(0,n.useState)(""),[L,N]=(0,n.useState)(""),[z,K]=(0,n.useState)(!0),[U,F]=(0,n.useState)(!0),[P,G]=(0,n.useState)(!0),[J,V]=(0,n.useState)(!0),[q,W]=(0,n.useState)(!1),[Y,H]=(0,n.useState)(""),[Z,$]=(0,n.useState)("async"),[Q,X]=(0,n.useState)("100"),[ee,te]=(0,n.useState)("Gi"),[ae,ne]=(0,n.useState)("60"),[le,ie]=(0,n.useState)(!1),se=s.zZ.BUCKETS+"/".concat(x,"/admin/replication");(0,n.useEffect)((()=>{e((0,r.ph)("bucket-replication-add"))}),[]);return(0,n.useEffect)((()=>{!le&&k.length>=3&&R.length>=8&&M.length>=3&&A.length>0&&ie(!0)}),[A,k,R,M,le]),(0,n.useEffect)((()=>{le&&(k.length<3||R.length<8||M.length<3||A.length<1)&&ie(!1)}),[A,k,R,M,le]),(0,j.jsxs)(n.Fragment,{children:[(0,j.jsx)(o.A,{label:(0,j.jsx)(i.EGL,{label:"Add Bucket Replication Rule - "+x,onClick:()=>t(se)}),actions:(0,j.jsx)(d.A,{})}),(0,j.jsx)(i.Mxu,{children:(0,j.jsx)(i.Hbc,{title:"Add Replication Rule",icon:(0,j.jsx)(i.WBh,{}),helpBox:(0,j.jsx)(i.lVp,{iconComponent:(0,j.jsx)(i.WBh,{}),title:"Bucket Replication Configuration",help:(0,j.jsxs)(n.Fragment,{children:[(0,j.jsx)(i.azJ,{sx:{paddconngTop:"10px"},children:"The bucket selected in this deployment acts as the \u201csource\u201d while the configured remote deployment acts as the \u201ctarget\u201d."}),(0,j.jsx)(i.azJ,{sx:{paddingTop:"10px"},children:'For each write operation to this "source" bucket, MinIO checks all configured replication rules and applies the matching rule with highest configured priority.'}),(0,j.jsx)(i.azJ,{sx:{paddingTop:"10px"},children:"MinIO supports automatically replicating existing objects in a bucket, however it does not enable existing object replication by default. Objects created before replication was configured or while replication is disabled are not synchronized to the target deployment unless replication of existing objects is enabled."}),(0,j.jsx)(i.azJ,{sx:{paddingTop:"10px"},children:"MinIO supports replicating delete operations, where MinIO synchronizes deleting specific object versions and new delete markers. Delete operation replication uses the same replication process as all other replication operations."})," "]})}),children:(0,j.jsxs)("form",{noValidate:!0,autoComplete:"off",onSubmit:a=>{a.preventDefault(),f(!0),(()=>{const a=[{originBucket:x,destinationBucket:M}],n=parseInt(ae),l="".concat(z?"https://":"http://").concat(A),i={accessKey:k,secretKey:R,targetURL:l,region:L,bucketsRelation:a,syncMode:Z,bandwidth:"async"===Z?parseInt((0,g.q5)(Q,ee,!0)):0,healthCheckPeriod:n,prefix:I,tags:Y,replicateDeleteMarkers:U,replicateDeletes:P,replicateExistingObjects:q,priority:parseInt(S),storageClass:T,replicateMetadata:J};u.F.bucketsReplication.setMultiBucketReplication(i).then((a=>{f(!1);const n=m()(a.data,"replicationState",[]);if(n.length>0){const a=n[0];return f(!1),a.errorString&&""!==a.errorString?void e((0,r.C9)({errorMessage:a.errorString,detailedError:"There was an error"})):void t(se)}e((0,r.C9)({errorMessage:"No changes applied",detailedError:""}))})).catch((t=>{console.log("this is an error!"),f(!1),e((0,r.C9)((0,h.S)(t.error)))}))})()},children:[(0,j.jsx)(i.cl_,{id:"priority",name:"priority",onChange:e=>{e.target.validity.valid&&C(e.target.value)},label:"Priority",value:S,pattern:"[0-9]*"}),(0,j.jsx)(i.cl_,{id:"targetURL",name:"targetURL",onChange:e=>{B(e.target.value)},placeholder:"play.min.io",label:"Target URL",value:A}),(0,j.jsx)(i.dOG,{checked:z,id:"useTLS",name:"useTLS",label:"Use TLS",onChange:e=>{K(e.target.checked)},value:"yes"}),(0,j.jsx)(i.cl_,{id:"accessKey",name:"accessKey",onChange:e=>{w(e.target.value)},label:"Access Key",value:k}),(0,j.jsx)(i.cl_,{id:"secretKey",name:"secretKey",onChange:e=>{E(e.target.value)},label:"Secret Key",value:R}),(0,j.jsx)(i.cl_,{id:"targetBucket",name:"targetBucket",onChange:e=>{O(e.target.value)},label:"Target Bucket",value:M}),(0,j.jsx)(i.cl_,{id:"region",name:"region",onChange:e=>{N(e.target.value)},label:"Region",value:L}),(0,j.jsx)(i.l6P,{id:"replication_mode",name:"replication_mode",onChange:e=>{$(e)},label:"Replication Mode",value:Z,options:[{label:"Asynchronous",value:"async"},{label:"Synchronous",value:"sync"}]}),"async"===Z&&(0,j.jsx)(i.azJ,{className:"inputItem",children:(0,j.jsx)(i.cl_,{type:"number",id:"bandwidth_scalar",name:"bandwidth_scalar",onChange:e=>{e.target.validity.valid&&X(e.target.value)},label:"Bandwidth",value:Q,min:"0",pattern:"[0-9]*",overlayObject:(0,j.jsx)(b.A,{id:"quota_unit",onUnitChange:e=>{te(e)},unitSelected:ee,unitsList:(0,g.l9)(["Ki"]),disabled:!1})})}),(0,j.jsx)(i.cl_,{id:"healthCheck",name:"healthCheck",onChange:e=>{ne(e.target.value)},label:"Health Check Duration",value:ae}),(0,j.jsx)(i.cl_,{id:"storageClass",name:"storageClass",onChange:e=>{_(e.target.value)},placeholder:"STANDARD_IA,REDUCED_REDUNDANCY etc",label:"Storage Class",value:T}),(0,j.jsxs)("fieldset",{className:"inputItem",children:[(0,j.jsx)("legend",{children:"Object Filters"}),(0,j.jsx)(i.cl_,{id:"prefix",name:"prefix",onChange:e=>{D(e.target.value)},placeholder:"prefix",label:"Prefix",value:I}),(0,j.jsx)(p.A,{name:"tags",label:"Tags",elements:"",onChange:e=>{H(e)},keyPlaceholder:"Tag Key",valuePlaceholder:"Tag Value",withBorder:!0})]}),(0,j.jsxs)("fieldset",{className:"inputItem",children:[(0,j.jsx)("legend",{children:"Replication Options"}),(0,j.jsx)(i.dOG,{checked:q,id:"repExisting",name:"repExisting",label:"Existing Objects",onChange:e=>{W(e.target.checked)},description:"Replicate existing objects"}),(0,j.jsx)(i.dOG,{checked:J,id:"metadatataSync",name:"metadatataSync",label:"Metadata Sync",onChange:e=>{V(e.target.checked)},description:"Metadata Sync"}),(0,j.jsx)(i.dOG,{checked:U,id:"deleteMarker",name:"deleteMarker",label:"Delete Marker",onChange:e=>{F(e.target.checked)},description:"Replicate soft deletes"}),(0,j.jsx)(i.dOG,{checked:P,id:"repDelete",name:"repDelete",label:"Deletes",onChange:e=>{G(e.target.checked)},description:"Replicate versioned deletes"})]}),(0,j.jsxs)(i.xA9,{item:!0,xs:12,sx:{display:"flex",flexDirection:"row",justifyContent:"end",gap:10,paddingTop:10},children:[(0,j.jsx)(i.$nd,{id:"cancel",type:"button",variant:"regular",disabled:v,onClick:()=>{t(se)},label:"Cancel"}),(0,j.jsx)(i.$nd,{id:"submit",type:"submit",variant:"callAction",color:"primary",disabled:v||!le,label:"Save"})]})]})})})]})}},23758:(e,t,a)=>{a.d(t,{A:()=>d});var n=a(65043),l=a(89923),i=a(94574),s=a(33097),r=a.n(s),c=a(70579);const o=i.Ay.button((e=>{let{theme:t}=e;return{border:"1px solid ".concat(r()(t,"borderColor","#E2E2E2")),borderRadius:3,color:r()(t,"secondaryText","#5B5C5C"),backgroundColor:r()(t,"boxBackground","#FBFAFA"),fontSize:12}})),d=e=>{let{id:t,unitSelected:a,unitsList:i,disabled:s=!1,onUnitChange:r}=e;const[d,u]=n.useState(null),h=Boolean(d),p=e=>{u(null),""!==e&&r&&r(e)};return(0,c.jsxs)(n.Fragment,{children:[(0,c.jsx)(o,{id:"".concat(t,"-button"),"aria-controls":"".concat(t,"-menu"),"aria-haspopup":"true","aria-expanded":h?"true":void 0,onClick:e=>{u(e.currentTarget)},disabled:s,type:"button",children:a}),(0,c.jsx)(l.Vey,{id:"upload-main-menu",options:i,selectedOption:"",onSelect:e=>p(e),hideTriggerAction:()=>{p("")},open:h,anchorEl:d,anchorOrigin:"end"})]})}},96512:(e,t,a)=>{a.d(t,{A:()=>d});var n=a(65043),l=a(33097),i=a.n(l),s=a(93950),r=a.n(s),c=a(89923),o=a(70579);const d=e=>{let{elements:t,name:a,label:l,tooltip:s="",keyPlaceholder:d="",valuePlaceholder:u="",onChange:h,withBorder:p=!1}=e;const[g,x]=(0,n.useState)([""]),[m,b]=(0,n.useState)([""]),j=(0,n.createRef)();(0,n.useEffect)((()=>{if(1===g.length&&""===g[0]&&1===m.length&&""===m[0]&&t&&""!==t){const e=t.split("&");let a=[],n=[];e.forEach((e=>{const t=e.split("=");2===t.length&&(a.push(t[0]),n.push(t[1]))})),a.push(""),n.push(""),x(a),b(n)}}),[g,m,t]),(0,n.useEffect)((()=>{const e=j.current;e&&g.length>1&&e.scrollIntoView(!1)}),[g]);const y=(0,n.useRef)(!0);(0,n.useLayoutEffect)((()=>{y.current?y.current=!1:S()}),[g,m]);const v=e=>{e.persist();let t=[...g];const a=i()(e.target,"dataset.index","0");t[parseInt(a)]=e.target.value,x(t)},f=e=>{e.persist();let t=[...m];const a=i()(e.target,"dataset.index","0");t[parseInt(a)]=e.target.value,b(t)},S=r()((()=>{let e="";g.forEach(((t,a)=>{if(g[a]&&m[a]){let n="".concat(t,"=").concat(m[a]);0!==a&&(n="&".concat(n)),e="".concat(e).concat(n)}})),h(e)}),500),C=m.map(((e,t)=>(0,o.jsxs)(c.xA9,{item:!0,xs:12,className:"lineInputBoxes inputItem",children:[(0,o.jsx)(c.cl_,{id:"".concat(a,"-key-").concat(t.toString()),label:"",name:"".concat(a,"-").concat(t.toString()),value:g[t],onChange:v,index:t,placeholder:d}),(0,o.jsx)("span",{className:"queryDiv",children:":"}),(0,o.jsx)(c.cl_,{id:"".concat(a,"-value-").concat(t.toString()),label:"",name:"".concat(a,"-").concat(t.toString()),value:m[t],onChange:f,index:t,placeholder:u,overlayIcon:t===m.length-1?(0,o.jsx)(c.REV,{}):null,overlayAction:()=>{(()=>{if(""!==g[g.length-1].trim()&&""!==m[m.length-1].trim()){const e=[...g],t=[...m];e.push(""),t.push(""),x(e),b(t)}})()}})]},"query-pair-".concat(a,"-").concat(t.toString()))));return(0,o.jsx)(n.Fragment,{children:(0,o.jsxs)(c.xA9,{item:!0,xs:12,sx:{"& .lineInputBoxes":{display:"flex"},"& .queryDiv":{alignSelf:"center",margin:"-15px 4px 0",fontWeight:600}},className:"inputItem",children:[(0,o.jsxs)(c.l1Y,{children:[l,""!==s&&(0,o.jsx)(c.azJ,{sx:{marginLeft:5,display:"flex",alignItems:"center","& .min-icon":{width:13}},children:(0,o.jsx)(c.m_M,{tooltip:s,placement:"top",children:(0,o.jsx)(c.NTw,{style:{width:13,height:13}})})})]}),(0,o.jsxs)(c.azJ,{withBorders:p,sx:{padding:15,height:150,overflowY:"auto",position:"relative",marginTop:15},children:[C,(0,o.jsx)("div",{ref:j})]})]})})}}}]); -//# sourceMappingURL=7880.6f98d22b.chunk.js.map \ No newline at end of file diff --git a/web-app/build/static/js/7880.6f98d22b.chunk.js.map b/web-app/build/static/js/7880.6f98d22b.chunk.js.map deleted file mode 100644 index b0e88a8a29..0000000000 --- a/web-app/build/static/js/7880.6f98d22b.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/7880.6f98d22b.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/AddBucketReplication.tsx","screens/Console/Common/FormComponents/InputUnitMenu/InputUnitMenu.tsx","screens/Console/Common/FormComponents/QueryMultiSelector/QueryMultiSelector.tsx"],"sourcesContent":["// 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 } from \"react-router-dom\";\nimport {\n BackLink,\n Box,\n BucketReplicationIcon,\n Button,\n FormLayout,\n Grid,\n HelpBox,\n InputBox,\n PageLayout,\n Select,\n Switch,\n} from \"mds\";\nimport { IAM_PAGES } from \"../../../../common/SecureComponent/permissions\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport PageHeaderWrapper from \"../../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport HelpMenu from \"../../HelpMenu\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport QueryMultiSelector from \"screens/Console/Common/FormComponents/QueryMultiSelector/QueryMultiSelector\";\nimport { getBytes, k8sScalarUnitsExcluding } from \"common/utils\";\nimport get from \"lodash/get\";\nimport InputUnitMenu from \"screens/Console/Common/FormComponents/InputUnitMenu/InputUnitMenu\";\n\nconst AddBucketReplication = () => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n let params = new URLSearchParams(document.location.search);\n const bucketName = params.get(\"bucketName\") || \"\";\n const nextPriority = params.get(\"nextPriority\") || \"1\";\n const [addLoading, setAddLoading] = useState(false);\n const [priority, setPriority] = useState(nextPriority);\n const [accessKey, setAccessKey] = useState(\"\");\n const [secretKey, setSecretKey] = useState(\"\");\n const [targetURL, setTargetURL] = useState(\"\");\n const [targetStorageClass, setTargetStorageClass] = useState(\"\");\n const [prefix, setPrefix] = useState(\"\");\n const [targetBucket, setTargetBucket] = useState(\"\");\n const [region, setRegion] = useState(\"\");\n const [useTLS, setUseTLS] = useState(true);\n const [repDeleteMarker, setRepDeleteMarker] = useState(true);\n const [repDelete, setRepDelete] = useState(true);\n const [metadataSync, setMetadataSync] = useState(true);\n const [repExisting, setRepExisting] = useState(false);\n const [tags, setTags] = useState(\"\");\n const [replicationMode, setReplicationMode] = useState<\"async\" | \"sync\">(\n \"async\",\n );\n const [bandwidthScalar, setBandwidthScalar] = useState(\"100\");\n const [bandwidthUnit, setBandwidthUnit] = useState(\"Gi\");\n const [healthCheck, setHealthCheck] = useState(\"60\");\n const [validated, setValidated] = useState(false);\n const backLink = IAM_PAGES.BUCKETS + `/${bucketName}/admin/replication`;\n useEffect(() => {\n dispatch(setHelpName(\"bucket-replication-add\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const addRecord = () => {\n const replicate = [\n {\n originBucket: bucketName,\n destinationBucket: targetBucket,\n },\n ];\n\n const hc = parseInt(healthCheck);\n\n const endURL = `${useTLS ? \"https://\" : \"http://\"}${targetURL}`;\n\n const remoteBucketsInfo = {\n accessKey: accessKey,\n secretKey: secretKey,\n targetURL: endURL,\n region: region,\n bucketsRelation: replicate,\n syncMode: replicationMode,\n bandwidth:\n replicationMode === \"async\"\n ? parseInt(getBytes(bandwidthScalar, bandwidthUnit, true))\n : 0,\n healthCheckPeriod: hc,\n prefix: prefix,\n tags: tags,\n replicateDeleteMarkers: repDeleteMarker,\n replicateDeletes: repDelete,\n replicateExistingObjects: repExisting,\n priority: parseInt(priority),\n storageClass: targetStorageClass,\n replicateMetadata: metadataSync,\n };\n\n api.bucketsReplication\n .setMultiBucketReplication(remoteBucketsInfo)\n .then((res) => {\n setAddLoading(false);\n\n const states = get(res.data, \"replicationState\", []);\n\n if (states.length > 0) {\n const itemVal = states[0];\n\n setAddLoading(false);\n\n if (itemVal.errorString && itemVal.errorString !== \"\") {\n dispatch(\n setErrorSnackMessage({\n errorMessage: itemVal.errorString,\n detailedError: \"There was an error\",\n }),\n );\n // navigate(backLink);\n return;\n }\n navigate(backLink);\n return;\n }\n dispatch(\n setErrorSnackMessage({\n errorMessage: \"No changes applied\",\n detailedError: \"\",\n }),\n );\n })\n .catch((err) => {\n console.log(\"this is an error!\");\n setAddLoading(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n useEffect(() => {\n !validated &&\n accessKey.length >= 3 &&\n secretKey.length >= 8 &&\n targetBucket.length >= 3 &&\n targetURL.length > 0 &&\n setValidated(true);\n }, [targetURL, accessKey, secretKey, targetBucket, validated]);\n\n useEffect(() => {\n if (\n validated &&\n (accessKey.length < 3 ||\n secretKey.length < 8 ||\n targetBucket.length < 3 ||\n targetURL.length < 1)\n ) {\n setValidated(false);\n }\n }, [targetURL, accessKey, secretKey, targetBucket, validated]);\n\n return (\n \n navigate(backLink)}\n />\n }\n actions={}\n />\n \n }\n helpBox={\n }\n title=\"Bucket Replication Configuration\"\n help={\n \n \n The bucket selected in this deployment acts as the “source”\n while the configured remote deployment acts as the “target”.\n \n \n For each write operation to this \"source\" bucket, MinIO\n checks all configured replication rules and applies the\n matching rule with highest configured priority.\n \n \n MinIO supports automatically replicating existing objects in\n a bucket, however it does not enable existing object\n replication by default. Objects created before replication\n was configured or while replication is disabled are not\n synchronized to the target deployment unless replication of\n existing objects is enabled.\n \n \n MinIO supports replicating delete operations, where MinIO\n synchronizes deleting specific object versions and new\n delete markers. Delete operation replication uses the same\n replication process as all other replication operations.\n {\" \"}\n \n }\n />\n }\n >\n ) => {\n e.preventDefault();\n setAddLoading(true);\n addRecord();\n }}\n >\n ) => {\n if (e.target.validity.valid) {\n setPriority(e.target.value);\n }\n }}\n label=\"Priority\"\n value={priority}\n pattern={\"[0-9]*\"}\n />\n\n ) => {\n setTargetURL(e.target.value);\n }}\n placeholder=\"play.min.io\"\n label=\"Target URL\"\n value={targetURL}\n />\n\n {\n setUseTLS(e.target.checked);\n }}\n value=\"yes\"\n />\n\n ) => {\n setAccessKey(e.target.value);\n }}\n label=\"Access Key\"\n value={accessKey}\n />\n\n ) => {\n setSecretKey(e.target.value);\n }}\n label=\"Secret Key\"\n value={secretKey}\n />\n\n ) => {\n setTargetBucket(e.target.value);\n }}\n label=\"Target Bucket\"\n value={targetBucket}\n />\n\n ) => {\n setRegion(e.target.value);\n }}\n label=\"Region\"\n value={region}\n />\n\n {\n setReplicationMode(value as \"async\" | \"sync\");\n }}\n label=\"Replication Mode\"\n value={replicationMode}\n options={[\n { label: \"Asynchronous\", value: \"async\" },\n { label: \"Synchronous\", value: \"sync\" },\n ]}\n />\n\n {replicationMode === \"async\" && (\n \n ) => {\n if (e.target.validity.valid) {\n setBandwidthScalar(e.target.value as string);\n }\n }}\n label=\"Bandwidth\"\n value={bandwidthScalar}\n min=\"0\"\n pattern={\"[0-9]*\"}\n overlayObject={\n {\n setBandwidthUnit(newValue);\n }}\n unitSelected={bandwidthUnit}\n unitsList={k8sScalarUnitsExcluding([\"Ki\"])}\n disabled={false}\n />\n }\n />\n \n )}\n\n ) => {\n setHealthCheck(e.target.value as string);\n }}\n label=\"Health Check Duration\"\n value={healthCheck}\n />\n\n ) => {\n setTargetStorageClass(e.target.value);\n }}\n placeholder=\"STANDARD_IA,REDUCED_REDUNDANCY etc\"\n label=\"Storage Class\"\n value={targetStorageClass}\n />\n\n

\n Object Filters\n ) => {\n setPrefix(e.target.value);\n }}\n placeholder=\"prefix\"\n label=\"Prefix\"\n value={prefix}\n />\n {\n setTags(vl);\n }}\n keyPlaceholder=\"Tag Key\"\n valuePlaceholder=\"Tag Value\"\n withBorder\n />\n
\n
\n Replication Options\n {\n setRepExisting(e.target.checked);\n }}\n description={\"Replicate existing objects\"}\n />\n {\n setMetadataSync(e.target.checked);\n }}\n description={\"Metadata Sync\"}\n />\n {\n setRepDeleteMarker(e.target.checked);\n }}\n description={\"Replicate soft deletes\"}\n />\n {\n setRepDelete(e.target.checked);\n }}\n description={\"Replicate versioned deletes\"}\n />\n
\n \n {\n navigate(backLink);\n }}\n label={\"Cancel\"}\n />\n \n \n \n \n \n \n );\n};\nexport default AddBucketReplication;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// 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 { DropdownSelector, SelectorType } from \"mds\";\nimport styled from \"styled-components\";\nimport get from \"lodash/get\";\n\ninterface IInputUnitBox {\n id: string;\n unitSelected: string;\n unitsList: SelectorType[];\n disabled?: boolean;\n onUnitChange?: (newValue: string) => void;\n}\n\nconst UnitMenuButton = styled.button(({ theme }) => ({\n border: `1px solid ${get(theme, \"borderColor\", \"#E2E2E2\")}`,\n borderRadius: 3,\n color: get(theme, \"secondaryText\", \"#5B5C5C\"),\n backgroundColor: get(theme, \"boxBackground\", \"#FBFAFA\"),\n fontSize: 12,\n}));\n\nconst InputUnitMenu = ({\n id,\n unitSelected,\n unitsList,\n disabled = false,\n onUnitChange,\n}: IInputUnitBox) => {\n const [anchorEl, setAnchorEl] = React.useState(null);\n const open = Boolean(anchorEl);\n const handleClick = (event: React.MouseEvent) => {\n setAnchorEl(event.currentTarget);\n };\n const handleClose = (newUnit: string) => {\n setAnchorEl(null);\n if (newUnit !== \"\" && onUnitChange) {\n onUnitChange(newUnit);\n }\n };\n\n return (\n \n \n {unitSelected}\n \n handleClose(value)}\n hideTriggerAction={() => {\n handleClose(\"\");\n }}\n open={open}\n anchorEl={anchorEl}\n anchorOrigin={\"end\"}\n />\n \n );\n};\n\nexport default InputUnitMenu;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more 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 Fragment,\n useEffect,\n useLayoutEffect,\n useRef,\n useState,\n} from \"react\";\nimport get from \"lodash/get\";\nimport debounce from \"lodash/debounce\";\nimport {\n AddIcon,\n Box,\n Grid,\n HelpIcon,\n InputBox,\n InputLabel,\n Tooltip,\n} from \"mds\";\n\ninterface IQueryMultiSelector {\n elements: string;\n name: string;\n label: string;\n tooltip?: string;\n keyPlaceholder?: string;\n valuePlaceholder?: string;\n withBorder?: boolean;\n onChange: (elements: string) => void;\n}\n\nconst QueryMultiSelector = ({\n elements,\n name,\n label,\n tooltip = \"\",\n keyPlaceholder = \"\",\n valuePlaceholder = \"\",\n onChange,\n withBorder = false,\n}: IQueryMultiSelector) => {\n const [currentKeys, setCurrentKeys] = useState([\"\"]);\n const [currentValues, setCurrentValues] = useState([\"\"]);\n const bottomList = createRef();\n\n // Use effect to get the initial values from props\n useEffect(() => {\n if (\n currentKeys.length === 1 &&\n currentKeys[0] === \"\" &&\n currentValues.length === 1 &&\n currentValues[0] === \"\" &&\n elements &&\n elements !== \"\"\n ) {\n const elementsSplit = elements.split(\"&\");\n let keys = [];\n let values = [];\n\n elementsSplit.forEach((element: string) => {\n const splittedVals = element.split(\"=\");\n if (splittedVals.length === 2) {\n keys.push(splittedVals[0]);\n values.push(splittedVals[1]);\n }\n });\n\n keys.push(\"\");\n values.push(\"\");\n\n setCurrentKeys(keys);\n setCurrentValues(values);\n }\n }, [currentKeys, currentValues, elements]);\n\n // Use effect to send new values to onChange\n useEffect(() => {\n const refScroll = bottomList.current;\n if (refScroll && currentKeys.length > 1) {\n refScroll.scrollIntoView(false);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentKeys]);\n\n // We avoid multiple re-renders / hang issue typing too fast\n const firstUpdate = useRef(true);\n useLayoutEffect(() => {\n if (firstUpdate.current) {\n firstUpdate.current = false;\n return;\n }\n debouncedOnChange();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentKeys, currentValues]);\n\n // If the last input is not empty, we add a new one\n const addEmptyLine = () => {\n if (\n currentKeys[currentKeys.length - 1].trim() !== \"\" &&\n currentValues[currentValues.length - 1].trim() !== \"\"\n ) {\n const keysList = [...currentKeys];\n const valuesList = [...currentValues];\n\n keysList.push(\"\");\n valuesList.push(\"\");\n\n setCurrentKeys(keysList);\n setCurrentValues(valuesList);\n }\n };\n\n // Onchange function for input box, we get the dataset-index & only update that value in the array\n const onChangeKey = (e: ChangeEvent) => {\n e.persist();\n\n let updatedElement = [...currentKeys];\n const index = get(e.target, \"dataset.index\", \"0\");\n const indexNum = parseInt(index);\n updatedElement[indexNum] = e.target.value;\n\n setCurrentKeys(updatedElement);\n };\n\n const onChangeValue = (e: ChangeEvent) => {\n e.persist();\n\n let updatedElement = [...currentValues];\n const index = get(e.target, \"dataset.index\", \"0\");\n const indexNum = parseInt(index);\n updatedElement[indexNum] = e.target.value;\n\n setCurrentValues(updatedElement);\n };\n\n // Debounce for On Change\n const debouncedOnChange = debounce(() => {\n let queryString = \"\";\n\n currentKeys.forEach((keyVal, index) => {\n if (currentKeys[index] && currentValues[index]) {\n let insertString = `${keyVal}=${currentValues[index]}`;\n if (index !== 0) {\n insertString = `&${insertString}`;\n }\n queryString = `${queryString}${insertString}`;\n }\n });\n\n onChange(queryString);\n }, 500);\n\n const inputs = currentValues.map((element, index) => {\n return (\n \n \n :\n : null}\n overlayAction={() => {\n addEmptyLine();\n }}\n />\n \n );\n });\n\n return (\n \n \n \n {label}\n {tooltip !== \"\" && (\n \n \n \n \n \n )}\n \n \n {inputs}\n
\n \n \n \n );\n};\nexport default QueryMultiSelector;\n"],"names":["AddBucketReplication","dispatch","useAppDispatch","navigate","useNavigate","params","URLSearchParams","document","location","search","bucketName","get","nextPriority","addLoading","setAddLoading","useState","priority","setPriority","accessKey","setAccessKey","secretKey","setSecretKey","targetURL","setTargetURL","targetStorageClass","setTargetStorageClass","prefix","setPrefix","targetBucket","setTargetBucket","region","setRegion","useTLS","setUseTLS","repDeleteMarker","setRepDeleteMarker","repDelete","setRepDelete","metadataSync","setMetadataSync","repExisting","setRepExisting","tags","setTags","replicationMode","setReplicationMode","bandwidthScalar","setBandwidthScalar","bandwidthUnit","setBandwidthUnit","healthCheck","setHealthCheck","validated","setValidated","backLink","IAM_PAGES","BUCKETS","concat","useEffect","setHelpName","length","_jsxs","Fragment","children","_jsx","PageHeaderWrapper","label","BackLink","onClick","actions","HelpMenu","PageLayout","FormLayout","title","icon","BucketReplicationIcon","helpBox","HelpBox","iconComponent","help","Box","sx","paddconngTop","paddingTop","noValidate","autoComplete","onSubmit","e","preventDefault","addRecord","replicate","originBucket","destinationBucket","hc","parseInt","endURL","remoteBucketsInfo","bucketsRelation","syncMode","bandwidth","getBytes","healthCheckPeriod","replicateDeleteMarkers","replicateDeletes","replicateExistingObjects","storageClass","replicateMetadata","api","bucketsReplication","setMultiBucketReplication","then","res","states","data","itemVal","errorString","setErrorSnackMessage","errorMessage","detailedError","catch","err","console","log","errorToHandler","error","InputBox","id","name","onChange","target","validity","valid","value","pattern","placeholder","Switch","checked","Select","options","className","type","min","overlayObject","InputUnitMenu","onUnitChange","newValue","unitSelected","unitsList","k8sScalarUnitsExcluding","disabled","QueryMultiSelector","elements","vl","keyPlaceholder","valuePlaceholder","withBorder","description","Grid","item","xs","display","flexDirection","justifyContent","gap","Button","variant","color","UnitMenuButton","styled","button","_ref","theme","border","borderRadius","backgroundColor","fontSize","_ref2","anchorEl","setAnchorEl","React","open","Boolean","handleClose","newUnit","undefined","event","currentTarget","DropdownSelector","selectedOption","onSelect","hideTriggerAction","anchorOrigin","tooltip","currentKeys","setCurrentKeys","currentValues","setCurrentValues","bottomList","createRef","elementsSplit","split","keys","values","forEach","element","splittedVals","push","refScroll","current","scrollIntoView","firstUpdate","useRef","useLayoutEffect","debouncedOnChange","onChangeKey","persist","updatedElement","index","onChangeValue","debounce","queryString","keyVal","insertString","inputs","map","toString","overlayIcon","AddIcon","overlayAction","addEmptyLine","trim","keysList","valuesList","alignSelf","margin","fontWeight","InputLabel","marginLeft","alignItems","width","Tooltip","placement","HelpIcon","style","height","withBorders","padding","overflowY","position","marginTop","ref"],"sourceRoot":""} \ No newline at end of file diff --git a/web-app/build/static/js/7880.d04a7a8e.chunk.js b/web-app/build/static/js/7880.d04a7a8e.chunk.js new file mode 100644 index 0000000000..dcdf753333 --- /dev/null +++ b/web-app/build/static/js/7880.d04a7a8e.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkweb_app=self.webpackChunkweb_app||[]).push([[7880],{7880:(e,t,a)=>{a.r(t),a.d(t,{default:()=>y});var n=a(65043),l=a(73216),i=a(89923),s=a(99161),r=a(64159),c=a(20554),o=a(48793),d=a(92452),h=a(56629),u=a(53518),p=a(96512),g=a(56483),x=a(33097),m=a.n(x),b=a(23758),j=a(70579);const y=()=>{const e=(0,c.jL)(),t=(0,l.Zp)();let a=new URLSearchParams(document.location.search);const x=a.get("bucketName")||"",y=a.get("nextPriority")||"1",[v,f]=(0,n.useState)(!1),[S,C]=(0,n.useState)(y),[k,w]=(0,n.useState)(""),[R,E]=(0,n.useState)(""),[A,B]=(0,n.useState)(""),[T,_]=(0,n.useState)(""),[I,D]=(0,n.useState)(""),[M,O]=(0,n.useState)(""),[L,N]=(0,n.useState)(""),[z,K]=(0,n.useState)(!0),[P,U]=(0,n.useState)(!0),[F,G]=(0,n.useState)(!0),[J,V]=(0,n.useState)(!0),[q,W]=(0,n.useState)(!0),[Y,H]=(0,n.useState)(""),[Z,$]=(0,n.useState)("async"),[Q,X]=(0,n.useState)("100"),[ee,te]=(0,n.useState)("Gi"),[ae,ne]=(0,n.useState)("60"),[le,ie]=(0,n.useState)(!1),se=s.zZ.BUCKETS+"/".concat(x,"/admin/replication");(0,n.useEffect)((()=>{e((0,r.ph)("bucket-replication-add"))}),[]);return(0,n.useEffect)((()=>{!le&&k.length>=3&&R.length>=8&&M.length>=3&&A.length>0&&ie(!0)}),[A,k,R,M,le]),(0,n.useEffect)((()=>{le&&(k.length<3||R.length<8||M.length<3||A.length<1)&&ie(!1)}),[A,k,R,M,le]),(0,j.jsxs)(n.Fragment,{children:[(0,j.jsx)(o.A,{label:(0,j.jsx)(i.EGL,{label:"Add Bucket Replication Rule - "+x,onClick:()=>t(se)}),actions:(0,j.jsx)(d.A,{})}),(0,j.jsx)(i.Mxu,{children:(0,j.jsx)(i.Hbc,{title:"Add Replication Rule",icon:(0,j.jsx)(i.WBh,{}),helpBox:(0,j.jsx)(i.lVp,{iconComponent:(0,j.jsx)(i.WBh,{}),title:"Bucket Replication Configuration",help:(0,j.jsxs)(n.Fragment,{children:[(0,j.jsx)(i.azJ,{sx:{paddconngTop:"10px"},children:"The bucket selected in this deployment acts as the \u201csource\u201d while the configured remote deployment acts as the \u201ctarget\u201d."}),(0,j.jsx)(i.azJ,{sx:{paddingTop:"10px"},children:'For each write operation to this "source" bucket, MinIO checks all configured replication rules and applies the matching rule with highest configured priority.'}),(0,j.jsx)(i.azJ,{sx:{paddingTop:"10px"},children:"MinIO supports automatically replicating existing objects in a bucket; this setting is enabled by default. Please note that objects created before replication was configured or while replication is disabled are not synchronized to the target deployment in case this setting is not enabled."}),(0,j.jsx)(i.azJ,{sx:{paddingTop:"10px"},children:"MinIO supports replicating delete operations, where MinIO synchronizes deleting specific object versions and new delete markers. Delete operation replication uses the same replication process as all other replication operations."})," "]})}),children:(0,j.jsxs)("form",{noValidate:!0,autoComplete:"off",onSubmit:a=>{a.preventDefault(),f(!0),(()=>{const a=[{originBucket:x,destinationBucket:M}],n=parseInt(ae),l="".concat(z?"https://":"http://").concat(A),i={accessKey:k,secretKey:R,targetURL:l,region:L,bucketsRelation:a,syncMode:Z,bandwidth:"async"===Z?parseInt((0,g.q5)(Q,ee,!0)):0,healthCheckPeriod:n,prefix:I,tags:Y,replicateDeleteMarkers:P,replicateDeletes:F,replicateExistingObjects:q,priority:parseInt(S),storageClass:T,replicateMetadata:J};h.F.bucketsReplication.setMultiBucketReplication(i).then((a=>{f(!1);const n=m()(a.data,"replicationState",[]);if(n.length>0){const a=n[0];return f(!1),a.errorString&&""!==a.errorString?void e((0,r.C9)({errorMessage:"There was an error",detailedError:a.errorString})):void t(se)}e((0,r.C9)({errorMessage:"No changes applied",detailedError:""}))})).catch((t=>{console.log("this is an error!"),f(!1),e((0,r.C9)((0,u.S)(t.error)))}))})()},children:[(0,j.jsx)(i.cl_,{id:"priority",name:"priority",onChange:e=>{e.target.validity.valid&&C(e.target.value)},label:"Priority",value:S,pattern:"[0-9]*"}),(0,j.jsx)(i.cl_,{id:"targetURL",name:"targetURL",onChange:e=>{B(e.target.value)},placeholder:"play.min.io",label:"Target URL",value:A}),(0,j.jsx)(i.dOG,{checked:z,id:"useTLS",name:"useTLS",label:"Use TLS",onChange:e=>{K(e.target.checked)},value:"yes"}),(0,j.jsx)(i.cl_,{id:"accessKey",name:"accessKey",onChange:e=>{w(e.target.value)},label:"Access Key",value:k}),(0,j.jsx)(i.cl_,{id:"secretKey",name:"secretKey",onChange:e=>{E(e.target.value)},label:"Secret Key",value:R}),(0,j.jsx)(i.cl_,{id:"targetBucket",name:"targetBucket",onChange:e=>{O(e.target.value)},label:"Target Bucket",value:M}),(0,j.jsx)(i.cl_,{id:"region",name:"region",onChange:e=>{N(e.target.value)},label:"Region",value:L}),(0,j.jsx)(i.l6P,{id:"replication_mode",name:"replication_mode",onChange:e=>{$(e)},label:"Replication Mode",value:Z,options:[{label:"Asynchronous",value:"async"},{label:"Synchronous",value:"sync"}]}),"async"===Z&&(0,j.jsx)(i.azJ,{className:"inputItem",children:(0,j.jsx)(i.cl_,{type:"number",id:"bandwidth_scalar",name:"bandwidth_scalar",onChange:e=>{e.target.validity.valid&&X(e.target.value)},label:"Bandwidth",value:Q,min:"0",pattern:"[0-9]*",overlayObject:(0,j.jsx)(b.A,{id:"quota_unit",onUnitChange:e=>{te(e)},unitSelected:ee,unitsList:(0,g.l9)(["Ki"]),disabled:!1})})}),(0,j.jsx)(i.cl_,{id:"healthCheck",name:"healthCheck",onChange:e=>{ne(e.target.value)},label:"Health Check Duration",value:ae}),(0,j.jsx)(i.cl_,{id:"storageClass",name:"storageClass",onChange:e=>{_(e.target.value)},placeholder:"STANDARD_IA,REDUCED_REDUNDANCY etc",label:"Storage Class",value:T}),(0,j.jsxs)("fieldset",{className:"inputItem",children:[(0,j.jsx)("legend",{children:"Object Filters"}),(0,j.jsx)(i.cl_,{id:"prefix",name:"prefix",onChange:e=>{D(e.target.value)},placeholder:"prefix",label:"Prefix",value:I}),(0,j.jsx)(p.A,{name:"tags",label:"Tags",elements:"",onChange:e=>{H(e)},keyPlaceholder:"Tag Key",valuePlaceholder:"Tag Value",withBorder:!0})]}),(0,j.jsxs)("fieldset",{className:"inputItem",children:[(0,j.jsx)("legend",{children:"Replication Options"}),(0,j.jsx)(i.dOG,{checked:q,id:"repExisting",name:"repExisting",label:"Existing Objects",onChange:e=>{W(e.target.checked)},description:"Replicate existing objects"}),(0,j.jsx)(i.dOG,{checked:J,id:"metadatataSync",name:"metadatataSync",label:"Metadata Sync",onChange:e=>{V(e.target.checked)},description:"Metadata Sync"}),(0,j.jsx)(i.dOG,{checked:P,id:"deleteMarker",name:"deleteMarker",label:"Delete Marker",onChange:e=>{U(e.target.checked)},description:"Replicate soft deletes"}),(0,j.jsx)(i.dOG,{checked:F,id:"repDelete",name:"repDelete",label:"Deletes",onChange:e=>{G(e.target.checked)},description:"Replicate versioned deletes"})]}),(0,j.jsxs)(i.xA9,{item:!0,xs:12,sx:{display:"flex",flexDirection:"row",justifyContent:"end",gap:10,paddingTop:10},children:[(0,j.jsx)(i.$nd,{id:"cancel",type:"button",variant:"regular",disabled:v,onClick:()=>{t(se)},label:"Cancel"}),(0,j.jsx)(i.$nd,{id:"submit",type:"submit",variant:"callAction",color:"primary",disabled:v||!le,label:"Save"})]})]})})})]})}},23758:(e,t,a)=>{a.d(t,{A:()=>d});var n=a(65043),l=a(89923),i=a(94574),s=a(33097),r=a.n(s),c=a(70579);const o=i.Ay.button((e=>{let{theme:t}=e;return{border:"1px solid ".concat(r()(t,"borderColor","#E2E2E2")),borderRadius:3,color:r()(t,"secondaryText","#5B5C5C"),backgroundColor:r()(t,"boxBackground","#FBFAFA"),fontSize:12}})),d=e=>{let{id:t,unitSelected:a,unitsList:i,disabled:s=!1,onUnitChange:r}=e;const[d,h]=n.useState(null),u=Boolean(d),p=e=>{h(null),""!==e&&r&&r(e)};return(0,c.jsxs)(n.Fragment,{children:[(0,c.jsx)(o,{id:"".concat(t,"-button"),"aria-controls":"".concat(t,"-menu"),"aria-haspopup":"true","aria-expanded":u?"true":void 0,onClick:e=>{h(e.currentTarget)},disabled:s,type:"button",children:a}),(0,c.jsx)(l.Vey,{id:"upload-main-menu",options:i,selectedOption:"",onSelect:e=>p(e),hideTriggerAction:()=>{p("")},open:u,anchorEl:d,anchorOrigin:"end"})]})}},96512:(e,t,a)=>{a.d(t,{A:()=>d});var n=a(65043),l=a(33097),i=a.n(l),s=a(93950),r=a.n(s),c=a(89923),o=a(70579);const d=e=>{let{elements:t,name:a,label:l,tooltip:s="",keyPlaceholder:d="",valuePlaceholder:h="",onChange:u,withBorder:p=!1}=e;const[g,x]=(0,n.useState)([""]),[m,b]=(0,n.useState)([""]),j=(0,n.createRef)();(0,n.useEffect)((()=>{if(1===g.length&&""===g[0]&&1===m.length&&""===m[0]&&t&&""!==t){const e=t.split("&");let a=[],n=[];e.forEach((e=>{const t=e.split("=");2===t.length&&(a.push(t[0]),n.push(t[1]))})),a.push(""),n.push(""),x(a),b(n)}}),[g,m,t]),(0,n.useEffect)((()=>{const e=j.current;e&&g.length>1&&e.scrollIntoView(!1)}),[g]);const y=(0,n.useRef)(!0);(0,n.useLayoutEffect)((()=>{y.current?y.current=!1:S()}),[g,m]);const v=e=>{e.persist();let t=[...g];const a=i()(e.target,"dataset.index","0");t[parseInt(a)]=e.target.value,x(t)},f=e=>{e.persist();let t=[...m];const a=i()(e.target,"dataset.index","0");t[parseInt(a)]=e.target.value,b(t)},S=r()((()=>{let e="";g.forEach(((t,a)=>{if(g[a]&&m[a]){let n="".concat(t,"=").concat(m[a]);0!==a&&(n="&".concat(n)),e="".concat(e).concat(n)}})),u(e)}),500),C=m.map(((e,t)=>(0,o.jsxs)(c.xA9,{item:!0,xs:12,className:"lineInputBoxes inputItem",children:[(0,o.jsx)(c.cl_,{id:"".concat(a,"-key-").concat(t.toString()),label:"",name:"".concat(a,"-").concat(t.toString()),value:g[t],onChange:v,index:t,placeholder:d}),(0,o.jsx)("span",{className:"queryDiv",children:":"}),(0,o.jsx)(c.cl_,{id:"".concat(a,"-value-").concat(t.toString()),label:"",name:"".concat(a,"-").concat(t.toString()),value:m[t],onChange:f,index:t,placeholder:h,overlayIcon:t===m.length-1?(0,o.jsx)(c.REV,{}):null,overlayAction:()=>{(()=>{if(""!==g[g.length-1].trim()&&""!==m[m.length-1].trim()){const e=[...g],t=[...m];e.push(""),t.push(""),x(e),b(t)}})()}})]},"query-pair-".concat(a,"-").concat(t.toString()))));return(0,o.jsx)(n.Fragment,{children:(0,o.jsxs)(c.xA9,{item:!0,xs:12,sx:{"& .lineInputBoxes":{display:"flex"},"& .queryDiv":{alignSelf:"center",margin:"-15px 4px 0",fontWeight:600}},className:"inputItem",children:[(0,o.jsxs)(c.l1Y,{children:[l,""!==s&&(0,o.jsx)(c.azJ,{sx:{marginLeft:5,display:"flex",alignItems:"center","& .min-icon":{width:13}},children:(0,o.jsx)(c.m_M,{tooltip:s,placement:"top",children:(0,o.jsx)(c.NTw,{style:{width:13,height:13}})})})]}),(0,o.jsxs)(c.azJ,{withBorders:p,sx:{padding:15,height:150,overflowY:"auto",position:"relative",marginTop:15},children:[C,(0,o.jsx)("div",{ref:j})]})]})})}}}]); +//# sourceMappingURL=7880.d04a7a8e.chunk.js.map \ No newline at end of file diff --git a/web-app/build/static/js/7880.d04a7a8e.chunk.js.map b/web-app/build/static/js/7880.d04a7a8e.chunk.js.map new file mode 100644 index 0000000000..01ba5fbf0b --- /dev/null +++ b/web-app/build/static/js/7880.d04a7a8e.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/7880.d04a7a8e.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/AddBucketReplication.tsx","screens/Console/Common/FormComponents/InputUnitMenu/InputUnitMenu.tsx","screens/Console/Common/FormComponents/QueryMultiSelector/QueryMultiSelector.tsx"],"sourcesContent":["// 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 } from \"react-router-dom\";\nimport {\n BackLink,\n Box,\n BucketReplicationIcon,\n Button,\n FormLayout,\n Grid,\n HelpBox,\n InputBox,\n PageLayout,\n Select,\n Switch,\n} from \"mds\";\nimport { IAM_PAGES } from \"../../../../common/SecureComponent/permissions\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport PageHeaderWrapper from \"../../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport HelpMenu from \"../../HelpMenu\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport QueryMultiSelector from \"screens/Console/Common/FormComponents/QueryMultiSelector/QueryMultiSelector\";\nimport { getBytes, k8sScalarUnitsExcluding } from \"common/utils\";\nimport get from \"lodash/get\";\nimport InputUnitMenu from \"screens/Console/Common/FormComponents/InputUnitMenu/InputUnitMenu\";\n\nconst AddBucketReplication = () => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n let params = new URLSearchParams(document.location.search);\n const bucketName = params.get(\"bucketName\") || \"\";\n const nextPriority = params.get(\"nextPriority\") || \"1\";\n const [addLoading, setAddLoading] = useState(false);\n const [priority, setPriority] = useState(nextPriority);\n const [accessKey, setAccessKey] = useState(\"\");\n const [secretKey, setSecretKey] = useState(\"\");\n const [targetURL, setTargetURL] = useState(\"\");\n const [targetStorageClass, setTargetStorageClass] = useState(\"\");\n const [prefix, setPrefix] = useState(\"\");\n const [targetBucket, setTargetBucket] = useState(\"\");\n const [region, setRegion] = useState(\"\");\n const [useTLS, setUseTLS] = useState(true);\n const [repDeleteMarker, setRepDeleteMarker] = useState(true);\n const [repDelete, setRepDelete] = useState(true);\n const [metadataSync, setMetadataSync] = useState(true);\n const [repExisting, setRepExisting] = useState(true);\n const [tags, setTags] = useState(\"\");\n const [replicationMode, setReplicationMode] = useState<\"async\" | \"sync\">(\n \"async\",\n );\n const [bandwidthScalar, setBandwidthScalar] = useState(\"100\");\n const [bandwidthUnit, setBandwidthUnit] = useState(\"Gi\");\n const [healthCheck, setHealthCheck] = useState(\"60\");\n const [validated, setValidated] = useState(false);\n const backLink = IAM_PAGES.BUCKETS + `/${bucketName}/admin/replication`;\n useEffect(() => {\n dispatch(setHelpName(\"bucket-replication-add\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const addRecord = () => {\n const replicate = [\n {\n originBucket: bucketName,\n destinationBucket: targetBucket,\n },\n ];\n\n const hc = parseInt(healthCheck);\n\n const endURL = `${useTLS ? \"https://\" : \"http://\"}${targetURL}`;\n\n const remoteBucketsInfo = {\n accessKey: accessKey,\n secretKey: secretKey,\n targetURL: endURL,\n region: region,\n bucketsRelation: replicate,\n syncMode: replicationMode,\n bandwidth:\n replicationMode === \"async\"\n ? parseInt(getBytes(bandwidthScalar, bandwidthUnit, true))\n : 0,\n healthCheckPeriod: hc,\n prefix: prefix,\n tags: tags,\n replicateDeleteMarkers: repDeleteMarker,\n replicateDeletes: repDelete,\n replicateExistingObjects: repExisting,\n priority: parseInt(priority),\n storageClass: targetStorageClass,\n replicateMetadata: metadataSync,\n };\n\n api.bucketsReplication\n .setMultiBucketReplication(remoteBucketsInfo)\n .then((res) => {\n setAddLoading(false);\n\n const states = get(res.data, \"replicationState\", []);\n\n if (states.length > 0) {\n const itemVal = states[0];\n\n setAddLoading(false);\n\n if (itemVal.errorString && itemVal.errorString !== \"\") {\n dispatch(\n setErrorSnackMessage({\n errorMessage: \"There was an error\",\n detailedError: itemVal.errorString,\n }),\n );\n // navigate(backLink);\n return;\n }\n navigate(backLink);\n return;\n }\n dispatch(\n setErrorSnackMessage({\n errorMessage: \"No changes applied\",\n detailedError: \"\",\n }),\n );\n })\n .catch((err) => {\n console.log(\"this is an error!\");\n setAddLoading(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n useEffect(() => {\n !validated &&\n accessKey.length >= 3 &&\n secretKey.length >= 8 &&\n targetBucket.length >= 3 &&\n targetURL.length > 0 &&\n setValidated(true);\n }, [targetURL, accessKey, secretKey, targetBucket, validated]);\n\n useEffect(() => {\n if (\n validated &&\n (accessKey.length < 3 ||\n secretKey.length < 8 ||\n targetBucket.length < 3 ||\n targetURL.length < 1)\n ) {\n setValidated(false);\n }\n }, [targetURL, accessKey, secretKey, targetBucket, validated]);\n\n return (\n \n navigate(backLink)}\n />\n }\n actions={}\n />\n \n }\n helpBox={\n }\n title=\"Bucket Replication Configuration\"\n help={\n \n \n The bucket selected in this deployment acts as the “source”\n while the configured remote deployment acts as the “target”.\n \n \n For each write operation to this \"source\" bucket, MinIO\n checks all configured replication rules and applies the\n matching rule with highest configured priority.\n \n \n MinIO supports automatically replicating existing objects in\n a bucket; this setting is enabled by default. Please note\n that objects created before replication was configured or\n while replication is disabled are not synchronized to the\n target deployment in case this setting is not enabled.\n \n \n MinIO supports replicating delete operations, where MinIO\n synchronizes deleting specific object versions and new\n delete markers. Delete operation replication uses the same\n replication process as all other replication operations.\n {\" \"}\n \n }\n />\n }\n >\n ) => {\n e.preventDefault();\n setAddLoading(true);\n addRecord();\n }}\n >\n ) => {\n if (e.target.validity.valid) {\n setPriority(e.target.value);\n }\n }}\n label=\"Priority\"\n value={priority}\n pattern={\"[0-9]*\"}\n />\n\n ) => {\n setTargetURL(e.target.value);\n }}\n placeholder=\"play.min.io\"\n label=\"Target URL\"\n value={targetURL}\n />\n\n {\n setUseTLS(e.target.checked);\n }}\n value=\"yes\"\n />\n\n ) => {\n setAccessKey(e.target.value);\n }}\n label=\"Access Key\"\n value={accessKey}\n />\n\n ) => {\n setSecretKey(e.target.value);\n }}\n label=\"Secret Key\"\n value={secretKey}\n />\n\n ) => {\n setTargetBucket(e.target.value);\n }}\n label=\"Target Bucket\"\n value={targetBucket}\n />\n\n ) => {\n setRegion(e.target.value);\n }}\n label=\"Region\"\n value={region}\n />\n\n {\n setReplicationMode(value as \"async\" | \"sync\");\n }}\n label=\"Replication Mode\"\n value={replicationMode}\n options={[\n { label: \"Asynchronous\", value: \"async\" },\n { label: \"Synchronous\", value: \"sync\" },\n ]}\n />\n\n {replicationMode === \"async\" && (\n \n ) => {\n if (e.target.validity.valid) {\n setBandwidthScalar(e.target.value as string);\n }\n }}\n label=\"Bandwidth\"\n value={bandwidthScalar}\n min=\"0\"\n pattern={\"[0-9]*\"}\n overlayObject={\n {\n setBandwidthUnit(newValue);\n }}\n unitSelected={bandwidthUnit}\n unitsList={k8sScalarUnitsExcluding([\"Ki\"])}\n disabled={false}\n />\n }\n />\n \n )}\n\n ) => {\n setHealthCheck(e.target.value as string);\n }}\n label=\"Health Check Duration\"\n value={healthCheck}\n />\n\n ) => {\n setTargetStorageClass(e.target.value);\n }}\n placeholder=\"STANDARD_IA,REDUCED_REDUNDANCY etc\"\n label=\"Storage Class\"\n value={targetStorageClass}\n />\n\n
\n Object Filters\n ) => {\n setPrefix(e.target.value);\n }}\n placeholder=\"prefix\"\n label=\"Prefix\"\n value={prefix}\n />\n {\n setTags(vl);\n }}\n keyPlaceholder=\"Tag Key\"\n valuePlaceholder=\"Tag Value\"\n withBorder\n />\n
\n
\n Replication Options\n {\n setRepExisting(e.target.checked);\n }}\n description={\"Replicate existing objects\"}\n />\n {\n setMetadataSync(e.target.checked);\n }}\n description={\"Metadata Sync\"}\n />\n {\n setRepDeleteMarker(e.target.checked);\n }}\n description={\"Replicate soft deletes\"}\n />\n {\n setRepDelete(e.target.checked);\n }}\n description={\"Replicate versioned deletes\"}\n />\n
\n \n {\n navigate(backLink);\n }}\n label={\"Cancel\"}\n />\n \n \n \n \n
\n
\n );\n};\nexport default AddBucketReplication;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// 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 { DropdownSelector, SelectorType } from \"mds\";\nimport styled from \"styled-components\";\nimport get from \"lodash/get\";\n\ninterface IInputUnitBox {\n id: string;\n unitSelected: string;\n unitsList: SelectorType[];\n disabled?: boolean;\n onUnitChange?: (newValue: string) => void;\n}\n\nconst UnitMenuButton = styled.button(({ theme }) => ({\n border: `1px solid ${get(theme, \"borderColor\", \"#E2E2E2\")}`,\n borderRadius: 3,\n color: get(theme, \"secondaryText\", \"#5B5C5C\"),\n backgroundColor: get(theme, \"boxBackground\", \"#FBFAFA\"),\n fontSize: 12,\n}));\n\nconst InputUnitMenu = ({\n id,\n unitSelected,\n unitsList,\n disabled = false,\n onUnitChange,\n}: IInputUnitBox) => {\n const [anchorEl, setAnchorEl] = React.useState(null);\n const open = Boolean(anchorEl);\n const handleClick = (event: React.MouseEvent) => {\n setAnchorEl(event.currentTarget);\n };\n const handleClose = (newUnit: string) => {\n setAnchorEl(null);\n if (newUnit !== \"\" && onUnitChange) {\n onUnitChange(newUnit);\n }\n };\n\n return (\n \n \n {unitSelected}\n \n handleClose(value)}\n hideTriggerAction={() => {\n handleClose(\"\");\n }}\n open={open}\n anchorEl={anchorEl}\n anchorOrigin={\"end\"}\n />\n \n );\n};\n\nexport default InputUnitMenu;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more 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 Fragment,\n useEffect,\n useLayoutEffect,\n useRef,\n useState,\n} from \"react\";\nimport get from \"lodash/get\";\nimport debounce from \"lodash/debounce\";\nimport {\n AddIcon,\n Box,\n Grid,\n HelpIcon,\n InputBox,\n InputLabel,\n Tooltip,\n} from \"mds\";\n\ninterface IQueryMultiSelector {\n elements: string;\n name: string;\n label: string;\n tooltip?: string;\n keyPlaceholder?: string;\n valuePlaceholder?: string;\n withBorder?: boolean;\n onChange: (elements: string) => void;\n}\n\nconst QueryMultiSelector = ({\n elements,\n name,\n label,\n tooltip = \"\",\n keyPlaceholder = \"\",\n valuePlaceholder = \"\",\n onChange,\n withBorder = false,\n}: IQueryMultiSelector) => {\n const [currentKeys, setCurrentKeys] = useState([\"\"]);\n const [currentValues, setCurrentValues] = useState([\"\"]);\n const bottomList = createRef();\n\n // Use effect to get the initial values from props\n useEffect(() => {\n if (\n currentKeys.length === 1 &&\n currentKeys[0] === \"\" &&\n currentValues.length === 1 &&\n currentValues[0] === \"\" &&\n elements &&\n elements !== \"\"\n ) {\n const elementsSplit = elements.split(\"&\");\n let keys = [];\n let values = [];\n\n elementsSplit.forEach((element: string) => {\n const splittedVals = element.split(\"=\");\n if (splittedVals.length === 2) {\n keys.push(splittedVals[0]);\n values.push(splittedVals[1]);\n }\n });\n\n keys.push(\"\");\n values.push(\"\");\n\n setCurrentKeys(keys);\n setCurrentValues(values);\n }\n }, [currentKeys, currentValues, elements]);\n\n // Use effect to send new values to onChange\n useEffect(() => {\n const refScroll = bottomList.current;\n if (refScroll && currentKeys.length > 1) {\n refScroll.scrollIntoView(false);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentKeys]);\n\n // We avoid multiple re-renders / hang issue typing too fast\n const firstUpdate = useRef(true);\n useLayoutEffect(() => {\n if (firstUpdate.current) {\n firstUpdate.current = false;\n return;\n }\n debouncedOnChange();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentKeys, currentValues]);\n\n // If the last input is not empty, we add a new one\n const addEmptyLine = () => {\n if (\n currentKeys[currentKeys.length - 1].trim() !== \"\" &&\n currentValues[currentValues.length - 1].trim() !== \"\"\n ) {\n const keysList = [...currentKeys];\n const valuesList = [...currentValues];\n\n keysList.push(\"\");\n valuesList.push(\"\");\n\n setCurrentKeys(keysList);\n setCurrentValues(valuesList);\n }\n };\n\n // Onchange function for input box, we get the dataset-index & only update that value in the array\n const onChangeKey = (e: ChangeEvent) => {\n e.persist();\n\n let updatedElement = [...currentKeys];\n const index = get(e.target, \"dataset.index\", \"0\");\n const indexNum = parseInt(index);\n updatedElement[indexNum] = e.target.value;\n\n setCurrentKeys(updatedElement);\n };\n\n const onChangeValue = (e: ChangeEvent) => {\n e.persist();\n\n let updatedElement = [...currentValues];\n const index = get(e.target, \"dataset.index\", \"0\");\n const indexNum = parseInt(index);\n updatedElement[indexNum] = e.target.value;\n\n setCurrentValues(updatedElement);\n };\n\n // Debounce for On Change\n const debouncedOnChange = debounce(() => {\n let queryString = \"\";\n\n currentKeys.forEach((keyVal, index) => {\n if (currentKeys[index] && currentValues[index]) {\n let insertString = `${keyVal}=${currentValues[index]}`;\n if (index !== 0) {\n insertString = `&${insertString}`;\n }\n queryString = `${queryString}${insertString}`;\n }\n });\n\n onChange(queryString);\n }, 500);\n\n const inputs = currentValues.map((element, index) => {\n return (\n \n \n :\n : null}\n overlayAction={() => {\n addEmptyLine();\n }}\n />\n \n );\n });\n\n return (\n \n \n \n {label}\n {tooltip !== \"\" && (\n \n \n \n \n \n )}\n \n \n {inputs}\n
\n \n \n \n );\n};\nexport default QueryMultiSelector;\n"],"names":["AddBucketReplication","dispatch","useAppDispatch","navigate","useNavigate","params","URLSearchParams","document","location","search","bucketName","get","nextPriority","addLoading","setAddLoading","useState","priority","setPriority","accessKey","setAccessKey","secretKey","setSecretKey","targetURL","setTargetURL","targetStorageClass","setTargetStorageClass","prefix","setPrefix","targetBucket","setTargetBucket","region","setRegion","useTLS","setUseTLS","repDeleteMarker","setRepDeleteMarker","repDelete","setRepDelete","metadataSync","setMetadataSync","repExisting","setRepExisting","tags","setTags","replicationMode","setReplicationMode","bandwidthScalar","setBandwidthScalar","bandwidthUnit","setBandwidthUnit","healthCheck","setHealthCheck","validated","setValidated","backLink","IAM_PAGES","BUCKETS","concat","useEffect","setHelpName","length","_jsxs","Fragment","children","_jsx","PageHeaderWrapper","label","BackLink","onClick","actions","HelpMenu","PageLayout","FormLayout","title","icon","BucketReplicationIcon","helpBox","HelpBox","iconComponent","help","Box","sx","paddconngTop","paddingTop","noValidate","autoComplete","onSubmit","e","preventDefault","addRecord","replicate","originBucket","destinationBucket","hc","parseInt","endURL","remoteBucketsInfo","bucketsRelation","syncMode","bandwidth","getBytes","healthCheckPeriod","replicateDeleteMarkers","replicateDeletes","replicateExistingObjects","storageClass","replicateMetadata","api","bucketsReplication","setMultiBucketReplication","then","res","states","data","itemVal","errorString","setErrorSnackMessage","errorMessage","detailedError","catch","err","console","log","errorToHandler","error","InputBox","id","name","onChange","target","validity","valid","value","pattern","placeholder","Switch","checked","Select","options","className","type","min","overlayObject","InputUnitMenu","onUnitChange","newValue","unitSelected","unitsList","k8sScalarUnitsExcluding","disabled","QueryMultiSelector","elements","vl","keyPlaceholder","valuePlaceholder","withBorder","description","Grid","item","xs","display","flexDirection","justifyContent","gap","Button","variant","color","UnitMenuButton","styled","button","_ref","theme","border","borderRadius","backgroundColor","fontSize","_ref2","anchorEl","setAnchorEl","React","open","Boolean","handleClose","newUnit","undefined","event","currentTarget","DropdownSelector","selectedOption","onSelect","hideTriggerAction","anchorOrigin","tooltip","currentKeys","setCurrentKeys","currentValues","setCurrentValues","bottomList","createRef","elementsSplit","split","keys","values","forEach","element","splittedVals","push","refScroll","current","scrollIntoView","firstUpdate","useRef","useLayoutEffect","debouncedOnChange","onChangeKey","persist","updatedElement","index","onChangeValue","debounce","queryString","keyVal","insertString","inputs","map","toString","overlayIcon","AddIcon","overlayAction","addEmptyLine","trim","keysList","valuesList","alignSelf","margin","fontWeight","InputLabel","marginLeft","alignItems","width","Tooltip","placement","HelpIcon","style","height","withBorders","padding","overflowY","position","marginTop","ref"],"sourceRoot":""} \ No newline at end of file diff --git a/web-app/build/static/js/843.8502a4fd.chunk.js b/web-app/build/static/js/843.8502a4fd.chunk.js deleted file mode 100644 index 54fc8f8a82..0000000000 --- a/web-app/build/static/js/843.8502a4fd.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkweb_app=self.webpackChunkweb_app||[]).push([[843],{30843:(e,a,t)=>{t.r(a),t.d(a,{default:()=>b});var l=t(65043),n=t(24241),s=t(22166),c=t(89923),o=t(20554),r=t(56483),i=t(32511),d=t(65259),x=t(64159),h=t(6681),p=t(48793),u=t(92452),m=t(70579),g=null;const b=()=>{const e=(0,o.jL)(),a=(0,s.d4)((e=>e.trace.messages)),t=(0,s.d4)((e=>e.trace.traceStarted)),[b,f]=(0,l.useState)(""),[j,S]=(0,l.useState)(""),[y,w]=(0,l.useState)(""),[v,C]=(0,l.useState)(""),[k,_]=(0,l.useState)(0),[z,F]=(0,l.useState)(!1),[T,J]=(0,l.useState)(!0),[N,I]=(0,l.useState)(!1),[A,K]=(0,l.useState)(!1),[L,M]=(0,l.useState)(!1),[O,W]=(0,l.useState)(!1),[R,B]=(0,l.useState)(!1);return(0,l.useEffect)((()=>{e((0,x.ph)("trace"))}),[]),(0,m.jsxs)(l.Fragment,{children:[(0,m.jsx)(p.A,{label:"Trace",actions:(0,m.jsx)(u.A,{})}),(0,m.jsx)(c.Mxu,{children:(0,m.jsx)(c.azJ,{withBorders:!0,children:(0,m.jsxs)(c.xA9,{container:!0,children:[(0,m.jsxs)(c.xA9,{item:!0,xs:12,sx:{display:"flex",flexFlow:"column","& .trace-Checkbox-label":{fontSize:"14px",fontWeight:"normal"}},children:[(0,m.jsx)(c.azJ,{sx:{fontSize:"16px",fontWeight:600,padding:"20px 0px 20px 0"},children:"Calls to Trace"}),(0,m.jsxs)(c.azJ,{className:"".concat(t?"inactive-state":""),sx:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[(0,m.jsxs)(c.azJ,{sx:{display:"flex",flexFlow:"row","& .trace-checked-icon":{border:"1px solid red"},["@media (min-width: ".concat(c.nmC.md,"px)")]:{gap:30}},children:[(0,m.jsx)(c.Sc0,{checked:z,id:"all_calls",name:"all_calls",label:"All",onChange:()=>{F(!z)},value:"all",disabled:t}),(0,m.jsx)(c.Sc0,{checked:T||z,id:"s3_calls",name:"s3_calls",label:"S3",onChange:()=>{J(!T)},value:"s3",disabled:z||t}),(0,m.jsx)(c.Sc0,{checked:N||z,id:"internal_calls",name:"internal_calls",label:"Internal",onChange:()=>{I(!N)},value:"internal",disabled:z||t}),(0,m.jsx)(c.Sc0,{checked:A||z,id:"storage_calls",name:"storage_calls",label:"Storage",onChange:()=>{K(!A)},value:"storage",disabled:z||t}),(0,m.jsx)(c.Sc0,{checked:L||z,id:"os_calls",name:"os_calls",label:"OS",onChange:()=>{M(!L)},value:"os",disabled:z||t})]}),(0,m.jsxs)(c.azJ,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:"15px"},children:[(0,m.jsx)(h.A,{tooltip:"More filter options",children:(0,m.jsx)(c.$nd,{id:"filter-toggle",onClick:()=>{B(!R)},label:"Filters",icon:(0,m.jsx)(c.YGH,{}),variant:"regular",className:"filters-toggle-button",style:{width:"118px",background:R?"rgba(8, 28, 66, 0.04)":""}})}),!t&&(0,m.jsx)(c.$nd,{id:"start-trace",label:"Start","data-test-id":"trace-start-button",variant:"callAction",onClick:()=>{e((0,d.rZ)());const a=new URL(window.location.toString()),t=a.port;let l="".concat(T?"s3,":"").concat(N?"internal,":"").concat(A?"storage,":"").concat(L?"os,":"");z&&(l="all");const s=new URL(document.baseURI).pathname,c=(0,i.nw)(a.protocol);g=new WebSocket("".concat(c,"://").concat(a.hostname,":").concat(t).concat(s,"ws/trace?calls=").concat(l,"&threshold=").concat(k,"&onlyErrors=").concat(O?"yes":"no","&statusCode=").concat(b,"&method=").concat(j,"&funcname=").concat(y,"&path=").concat(v));let o=null;if(null!==g)return g.onopen=()=>{console.log("WebSocket Client Connected"),e((0,d.p)(!0)),g.send("ok"),o=setInterval((()=>{g.send("ok")}),1e4)},g.onmessage=a=>{let t=JSON.parse(a.data.toString());t.ptime=n.c9.fromISO(t.time).toJSDate(),t.key=Math.random(),e((0,d.cI)(t))},g.onclose=()=>{clearInterval(o),console.log("connection closed by server"),e((0,d.p)(!1))},()=>{g.close(1e3),clearInterval(o),console.log("closing websockets"),(0,d.p)(!1)}},style:{width:"118px"}}),t&&(0,m.jsx)(c.$nd,{id:"stop-trace",label:"Stop Trace","data-test-id":"trace-stop-button",variant:"callAction",onClick:()=>{g.close(1e3),e((0,d.p)(!1))},style:{width:"118px"}})]})]})]}),R?(0,m.jsxs)(c.azJ,{useBackground:!0,className:"".concat(t?"inactive-state":""),sx:{marginTop:"25px",display:"flex",flexFlow:"column",padding:"30px",width:"100%","& .orient-vertical":{flexFlow:"column","& label":{marginBottom:"10px",fontWeight:600},"& .inputRebase":{width:"90%"}},"& .trace-Checkbox-label":{fontSize:"14px",fontWeight:"normal"}},children:[(0,m.jsxs)(c.azJ,{sx:{display:"flex"},children:[(0,m.jsx)(c.cl_,{className:"orient-vertical",id:"trace-status-code",name:"trace-status-code",label:"Status Code",placeholder:"e.g. 503",value:b,onChange:e=>{f(e.target.value)},disabled:t}),(0,m.jsx)(c.cl_,{className:"orient-vertical",id:"trace-function-name",name:"trace-function-name",label:"Function Name",placeholder:"e.g. FunctionName2055",value:y,onChange:e=>{w(e.target.value)},disabled:t}),(0,m.jsx)(c.cl_,{className:"orient-vertical",id:"trace-method",name:"trace-method",label:"Method",placeholder:"e.g. Method 2056",value:j,onChange:e=>{S(e.target.value)},disabled:t})]}),(0,m.jsxs)(c.azJ,{sx:{gap:"30px",display:"grid",gridTemplateColumns:"2fr 1fr",width:"100%",marginTop:"33px"},children:[(0,m.jsx)(c.azJ,{sx:{flex:2,width:"calc( 100% + 10px)"},children:(0,m.jsx)(c.cl_,{className:"orient-vertical",id:"trace-path",name:"trace-path",label:"Path",placeholder:"e.g. my-bucket/my-prefix/*",value:v,onChange:e=>{C(e.target.value)},disabled:t})}),(0,m.jsx)(c.azJ,{sx:{marginLeft:"15px"},children:(0,m.jsx)(c.cl_,{className:"orient-vertical",id:"trace-fthreshold",name:"trace-fthreshold",label:"Response Threshold",type:"number",placeholder:"e.g. website.io.3249.114.12",value:"".concat(k),onChange:e=>{_(parseInt(e.target.value))},disabled:t})})]}),(0,m.jsx)(c.azJ,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-start",marginTop:"40px"},children:(0,m.jsx)(c.Sc0,{checked:O,id:"only_errors",name:"only_errors",label:"Display only Errors",onChange:()=>{W(!O)},value:"only_errors",disabled:t})})]}):null,(0,m.jsx)(c.xA9,{item:!0,xs:12,children:(0,m.jsx)(c.azJ,{sx:{fontSize:"16px",fontWeight:600,marginBottom:"30px",marginTop:"30px"},children:"Trace Results"})}),(0,m.jsx)(c.xA9,{item:!0,xs:12,children:(0,m.jsx)(c.bQt,{columns:[{label:"Time",elementKey:"ptime",renderFunction:e=>{const a=new Date(e);return(0,r.cj)(a)},width:100},{label:"Name",elementKey:"api"},{label:"Status",elementKey:"",renderFunction:e=>"".concat(e.statusCode," ").concat(e.statusMsg),renderFullObject:!0},{label:"Location",elementKey:"configuration_id",renderFunction:e=>"".concat(e.host," ").concat(e.client),renderFullObject:!0},{label:"Load Time",elementKey:"callStats.duration",width:150},{label:"Upload",elementKey:"callStats.rx",renderFunction:r.nO,width:150},{label:"Download",elementKey:"callStats.tx",renderFunction:r.nO,width:150}],isLoading:!1,records:a,entityName:"Traces",idField:"api",customEmptyMessage:t?"No Traced elements received yet":"Trace is not started yet",customPaperHeight:"calc(100vh - 292px)",autoScrollToBottom:!0})})]})})})]})}}}]); -//# sourceMappingURL=843.8502a4fd.chunk.js.map \ No newline at end of file diff --git a/web-app/build/static/js/843.8502a4fd.chunk.js.map b/web-app/build/static/js/843.8502a4fd.chunk.js.map deleted file mode 100644 index 4055cc2a8d..0000000000 --- a/web-app/build/static/js/843.8502a4fd.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/843.8502a4fd.chunk.js","mappings":"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","sources":["screens/Console/Trace/Trace.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, useEffect, useState } from \"react\";\nimport { DateTime } from \"luxon\";\nimport { useSelector } from \"react-redux\";\nimport {\n Box,\n breakPoints,\n Button,\n Checkbox,\n DataTable,\n FilterIcon,\n Grid,\n InputBox,\n PageLayout,\n} from \"mds\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { TraceMessage } from \"./types\";\nimport { niceBytes, timeFromDate } from \"../../../common/utils\";\nimport { wsProtocol } from \"../../../utils/wsUtils\";\nimport {\n setTraceStarted,\n traceMessageReceived,\n traceResetMessages,\n} from \"./traceSlice\";\nimport { setHelpName } from \"../../../systemSlice\";\nimport TooltipWrapper from \"../Common/TooltipWrapper/TooltipWrapper\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport HelpMenu from \"../HelpMenu\";\n\nvar socket: any = null;\n\nconst Trace = () => {\n const dispatch = useAppDispatch();\n\n const messages = useSelector((state: AppState) => state.trace.messages);\n const traceStarted = useSelector(\n (state: AppState) => state.trace.traceStarted,\n );\n\n const [statusCode, setStatusCode] = useState(\"\");\n const [method, setMethod] = useState(\"\");\n const [func, setFunc] = useState(\"\");\n const [path, setPath] = useState(\"\");\n const [threshold, setThreshold] = useState(0);\n const [all, setAll] = useState(false);\n const [s3, setS3] = useState(true);\n const [internal, setInternal] = useState(false);\n const [storage, setStorage] = useState(false);\n const [os, setOS] = useState(false);\n const [errors, setErrors] = useState(false);\n\n const [toggleFilter, setToggleFilter] = useState(false);\n\n const startTrace = () => {\n dispatch(traceResetMessages());\n const url = new URL(window.location.toString());\n const isDev = process.env.NODE_ENV === \"development\";\n const port = isDev ? \"9090\" : url.port;\n\n let calls = `${s3 ? \"s3,\" : \"\"}${internal ? \"internal,\" : \"\"}${\n storage ? \"storage,\" : \"\"\n }${os ? \"os,\" : \"\"}`;\n\n if (all) {\n calls = \"all\";\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 wsProt = wsProtocol(url.protocol);\n socket = new WebSocket(\n `${wsProt}://${\n url.hostname\n }:${port}${baseUrl}ws/trace?calls=${calls}&threshold=${threshold}&onlyErrors=${\n errors ? \"yes\" : \"no\"\n }&statusCode=${statusCode}&method=${method}&funcname=${func}&path=${path}`,\n );\n\n let interval: any | null = null;\n if (socket !== null) {\n socket.onopen = () => {\n console.log(\"WebSocket Client Connected\");\n dispatch(setTraceStarted(true));\n socket.send(\"ok\");\n interval = setInterval(() => {\n socket.send(\"ok\");\n }, 10 * 1000);\n };\n socket.onmessage = (message: MessageEvent) => {\n let m: TraceMessage = JSON.parse(message.data.toString());\n\n m.ptime = DateTime.fromISO(m.time).toJSDate();\n m.key = Math.random();\n dispatch(traceMessageReceived(m));\n };\n socket.onclose = () => {\n clearInterval(interval);\n console.log(\"connection closed by server\");\n dispatch(setTraceStarted(false));\n };\n return () => {\n socket.close(1000);\n clearInterval(interval);\n console.log(\"closing websockets\");\n setTraceStarted(false);\n };\n }\n };\n\n const stopTrace = () => {\n socket.close(1000);\n dispatch(setTraceStarted(false));\n };\n\n useEffect(() => {\n dispatch(setHelpName(\"trace\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n } />\n\n \n \n \n \n \n Calls to Trace\n \n \n \n {\n setAll(!all);\n }}\n value={\"all\"}\n disabled={traceStarted}\n />\n {\n setS3(!s3);\n }}\n value={\"s3\"}\n disabled={all || traceStarted}\n />\n {\n setInternal(!internal);\n }}\n value={\"internal\"}\n disabled={all || traceStarted}\n />\n {\n setStorage(!storage);\n }}\n value={\"storage\"}\n disabled={all || traceStarted}\n />\n {\n setOS(!os);\n }}\n value={\"os\"}\n disabled={all || traceStarted}\n />\n \n \n \n {\n setToggleFilter(!toggleFilter);\n }}\n label={\"Filters\"}\n icon={}\n variant={\"regular\"}\n className={\"filters-toggle-button\"}\n style={{\n width: \"118px\",\n background: toggleFilter ? \"rgba(8, 28, 66, 0.04)\" : \"\",\n }}\n />\n \n\n {!traceStarted && (\n \n )}\n {traceStarted && (\n \n )}\n \n \n \n {toggleFilter ? (\n \n \n {\n setStatusCode(e.target.value);\n }}\n disabled={traceStarted}\n />\n\n {\n setFunc(e.target.value);\n }}\n disabled={traceStarted}\n />\n\n {\n setMethod(e.target.value);\n }}\n disabled={traceStarted}\n />\n \n \n \n {\n setPath(e.target.value);\n }}\n disabled={traceStarted}\n />\n \n \n {\n setThreshold(parseInt(e.target.value));\n }}\n disabled={traceStarted}\n />\n \n \n \n {\n setErrors(!errors);\n }}\n value={\"only_errors\"}\n disabled={traceStarted}\n />\n \n \n ) : null}\n\n \n \n Trace Results\n \n \n \n {\n const timeParse = new Date(time);\n return timeFromDate(timeParse);\n },\n width: 100,\n },\n { label: \"Name\", elementKey: \"api\" },\n {\n label: \"Status\",\n elementKey: \"\",\n renderFunction: (fullElement: TraceMessage) =>\n `${fullElement.statusCode} ${fullElement.statusMsg}`,\n renderFullObject: true,\n },\n {\n label: \"Location\",\n elementKey: \"configuration_id\",\n renderFunction: (fullElement: TraceMessage) =>\n `${fullElement.host} ${fullElement.client}`,\n renderFullObject: true,\n },\n {\n label: \"Load Time\",\n elementKey: \"callStats.duration\",\n width: 150,\n },\n {\n label: \"Upload\",\n elementKey: \"callStats.rx\",\n renderFunction: niceBytes,\n width: 150,\n },\n {\n label: \"Download\",\n elementKey: \"callStats.tx\",\n renderFunction: niceBytes,\n width: 150,\n },\n ]}\n isLoading={false}\n records={messages}\n entityName=\"Traces\"\n idField=\"api\"\n customEmptyMessage={\n traceStarted\n ? \"No Traced elements received yet\"\n : \"Trace is not started yet\"\n }\n customPaperHeight={\"calc(100vh - 292px)\"}\n autoScrollToBottom\n />\n \n \n \n \n \n );\n};\n\nexport default Trace;\n"],"names":["socket","Trace","dispatch","useAppDispatch","messages","useSelector","state","trace","traceStarted","statusCode","setStatusCode","useState","method","setMethod","func","setFunc","path","setPath","threshold","setThreshold","all","setAll","s3","setS3","internal","setInternal","storage","setStorage","os","setOS","errors","setErrors","toggleFilter","setToggleFilter","useEffect","setHelpName","_jsxs","Fragment","children","_jsx","PageHeaderWrapper","label","actions","HelpMenu","PageLayout","Box","withBorders","Grid","container","item","xs","sx","display","flexFlow","fontSize","fontWeight","padding","className","concat","alignItems","justifyContent","border","breakPoints","md","gap","Checkbox","checked","id","name","onChange","value","disabled","TooltipWrapper","tooltip","Button","onClick","icon","FilterIcon","variant","style","width","background","startTrace","traceResetMessages","url","URL","window","location","toString","port","calls","baseUrl","document","baseURI","pathname","wsProt","wsProtocol","protocol","WebSocket","hostname","interval","onopen","console","log","setTraceStarted","send","setInterval","onmessage","message","m","JSON","parse","data","ptime","DateTime","fromISO","time","toJSDate","key","Math","random","traceMessageReceived","onclose","clearInterval","close","stopTrace","useBackground","marginTop","marginBottom","InputBox","placeholder","e","target","gridTemplateColumns","flex","marginLeft","type","parseInt","DataTable","columns","elementKey","renderFunction","timeParse","Date","timeFromDate","fullElement","statusMsg","renderFullObject","host","client","niceBytes","isLoading","records","entityName","idField","customEmptyMessage","customPaperHeight","autoScrollToBottom"],"sourceRoot":""} \ No newline at end of file diff --git a/web-app/build/static/js/843.d7a5defb.chunk.js b/web-app/build/static/js/843.d7a5defb.chunk.js new file mode 100644 index 0000000000..83295948ce --- /dev/null +++ b/web-app/build/static/js/843.d7a5defb.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkweb_app=self.webpackChunkweb_app||[]).push([[843],{30843:(e,t,n)=>{n.r(t),n.d(t,{default:()=>b});var r=n(65043),o=n(24241),a=n(22166),c=n(89923),s=n(20554),u=n(56483),i=n(32511),l=n(65259),d=n(64159),f=n(6681),p=n(48793),v=n(92452),S=n(5332),h=n(70579);const b=()=>{const e=(0,s.jL)(),t=(0,a.d4)((e=>e.trace.messages)),n=(0,a.d4)((e=>e.trace.traceStarted)),[b,E]=(0,r.useState)(""),[y,O]=(0,r.useState)(""),[_,m]=(0,r.useState)(""),[g,T]=(0,r.useState)(""),[w,N]=(0,r.useState)(0),[C,R]=(0,r.useState)(!1),[x,I]=(0,r.useState)(!0),[k,A]=(0,r.useState)(!1),[j,P]=(0,r.useState)(!1),[L,M]=(0,r.useState)(!1),[W,D]=(0,r.useState)(!1),[U,F]=(0,r.useState)(!1),[J,G]=(0,r.useState)(!1),[B,z]=(0,r.useState)("");(0,r.useEffect)((()=>{const e=new URL(window.location.toString()),t=(0,i.nw)(e.protocol),n=e.port,r=C?"all":(()=>{const e=[];return x&&e.push("s3"),k&&e.push("internal"),j&&e.push("storage"),L&&e.push("os"),e.join(",")})(),o=new URL(document.baseURI).pathname,a=new URL("".concat(t,"://").concat(e.hostname,":").concat(n).concat(o,"ws/trace"));a.searchParams.append("calls",r),a.searchParams.append("threshold",w.toString()),a.searchParams.append("onlyErrors",W?"yes":"no"),a.searchParams.append("statusCode",b),a.searchParams.append("method",y),a.searchParams.append("funcname",_),a.searchParams.append("path",g),z(a.href)}),[C,x,k,j,L,w,W,b,y,_,g]);const{sendMessage:K,lastJsonMessage:V,readyState:H}=(0,S.Ay)(B,{heartbeat:{message:"ok",interval:1e4,timeout:31536e6}},J);return(0,r.useEffect)((()=>{H===S.vj.CONNECTING?e((0,l.rZ)()):H===S.vj.OPEN?e((0,l.p)(!0)):H===S.vj.CLOSED&&e((0,l.p)(!1))}),[H,e,K]),(0,r.useEffect)((()=>{V&&(V.ptime=o.c9.fromISO(V.time).toJSDate(),V.key=Math.random(),e((0,l.cI)(V)))}),[V,e]),(0,r.useEffect)((()=>{e((0,d.ph)("trace"))}),[]),(0,h.jsxs)(r.Fragment,{children:[(0,h.jsx)(p.A,{label:"Trace",actions:(0,h.jsx)(v.A,{})}),(0,h.jsx)(c.Mxu,{children:(0,h.jsx)(c.azJ,{withBorders:!0,children:(0,h.jsxs)(c.xA9,{container:!0,children:[(0,h.jsxs)(c.xA9,{item:!0,xs:12,sx:{display:"flex",flexFlow:"column","& .trace-Checkbox-label":{fontSize:"14px",fontWeight:"normal"}},children:[(0,h.jsx)(c.azJ,{sx:{fontSize:"16px",fontWeight:600,padding:"20px 0px 20px 0"},children:"Calls to Trace"}),(0,h.jsxs)(c.azJ,{className:"".concat(n?"inactive-state":""),sx:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[(0,h.jsxs)(c.azJ,{sx:{display:"flex",flexFlow:"row","& .trace-checked-icon":{border:"1px solid red"},["@media (min-width: ".concat(c.nmC.md,"px)")]:{gap:30}},children:[(0,h.jsx)(c.Sc0,{checked:C,id:"all_calls",name:"all_calls",label:"All",onChange:()=>R(!C),value:"all",disabled:n}),(0,h.jsx)(c.Sc0,{checked:x||C,id:"s3_calls",name:"s3_calls",label:"S3",onChange:()=>I(!x),value:"s3",disabled:C||n}),(0,h.jsx)(c.Sc0,{checked:k||C,id:"internal_calls",name:"internal_calls",label:"Internal",onChange:()=>A(!k),value:"internal",disabled:C||n}),(0,h.jsx)(c.Sc0,{checked:j||C,id:"storage_calls",name:"storage_calls",label:"Storage",onChange:()=>P(!j),value:"storage",disabled:C||n}),(0,h.jsx)(c.Sc0,{checked:L||C,id:"os_calls",name:"os_calls",label:"OS",onChange:()=>M(!L),value:"os",disabled:C||n})]}),(0,h.jsxs)(c.azJ,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:"15px"},children:[(0,h.jsx)(f.A,{tooltip:"More filter options",children:(0,h.jsx)(c.$nd,{id:"filter-toggle",onClick:()=>F(!U),label:"Filters",icon:(0,h.jsx)(c.YGH,{}),variant:"regular",className:"filters-toggle-button",style:{width:"118px",background:U?"rgba(8, 28, 66, 0.04)":""}})}),!n&&(0,h.jsx)(c.$nd,{id:"start-trace",label:"Start","data-test-id":"trace-start-button",variant:"callAction",onClick:()=>G(!0),style:{width:"118px"}}),n&&(0,h.jsx)(c.$nd,{id:"stop-trace",label:"Stop Trace","data-test-id":"trace-stop-button",variant:"callAction",onClick:()=>G(!1),style:{width:"118px"}})]})]})]}),U?(0,h.jsxs)(c.azJ,{useBackground:!0,className:"".concat(n?"inactive-state":""),sx:{marginTop:"25px",display:"flex",flexFlow:"column",padding:"30px",width:"100%","& .orient-vertical":{flexFlow:"column","& label":{marginBottom:"10px",fontWeight:600},"& .inputRebase":{width:"90%"}},"& .trace-Checkbox-label":{fontSize:"14px",fontWeight:"normal"}},children:[(0,h.jsxs)(c.azJ,{sx:{display:"flex"},children:[(0,h.jsx)(c.cl_,{className:"orient-vertical",id:"trace-status-code",name:"trace-status-code",label:"Status Code",placeholder:"e.g. 503",value:b,onChange:e=>E(e.target.value),disabled:n}),(0,h.jsx)(c.cl_,{className:"orient-vertical",id:"trace-function-name",name:"trace-function-name",label:"Function Name",placeholder:"e.g. FunctionName2055",value:_,onChange:e=>m(e.target.value),disabled:n}),(0,h.jsx)(c.cl_,{className:"orient-vertical",id:"trace-method",name:"trace-method",label:"Method",placeholder:"e.g. Method 2056",value:y,onChange:e=>O(e.target.value),disabled:n})]}),(0,h.jsxs)(c.azJ,{sx:{gap:"30px",display:"grid",gridTemplateColumns:"2fr 1fr",width:"100%",marginTop:"33px"},children:[(0,h.jsx)(c.azJ,{sx:{flex:2,width:"calc( 100% + 10px)"},children:(0,h.jsx)(c.cl_,{className:"orient-vertical",id:"trace-path",name:"trace-path",label:"Path",placeholder:"e.g. my-bucket/my-prefix/*",value:g,onChange:e=>T(e.target.value),disabled:n})}),(0,h.jsx)(c.azJ,{sx:{marginLeft:"15px"},children:(0,h.jsx)(c.cl_,{className:"orient-vertical",id:"trace-fthreshold",name:"trace-fthreshold",label:"Response Threshold",type:"number",placeholder:"e.g. website.io.3249.114.12",value:"".concat(w),onChange:e=>N(parseInt(e.target.value)),disabled:n})})]}),(0,h.jsx)(c.azJ,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-start",marginTop:"40px"},children:(0,h.jsx)(c.Sc0,{checked:W,id:"only_errors",name:"only_errors",label:"Display only Errors",onChange:()=>D(!W),value:"only_errors",disabled:n})})]}):null,(0,h.jsx)(c.xA9,{item:!0,xs:12,children:(0,h.jsx)(c.azJ,{sx:{fontSize:"16px",fontWeight:600,marginBottom:"30px",marginTop:"30px"},children:"Trace Results"})}),(0,h.jsx)(c.xA9,{item:!0,xs:12,children:(0,h.jsx)(c.bQt,{columns:[{label:"Time",elementKey:"ptime",renderFunction:e=>{const t=new Date(e);return(0,u.cj)(t)},width:100},{label:"Name",elementKey:"api"},{label:"Status",elementKey:"",renderFunction:e=>"".concat(e.statusCode," ").concat(e.statusMsg),renderFullObject:!0},{label:"Location",elementKey:"configuration_id",renderFunction:e=>"".concat(e.host," ").concat(e.client),renderFullObject:!0},{label:"Load Time",elementKey:"callStats.duration",width:150},{label:"Upload",elementKey:"callStats.rx",renderFunction:u.nO,width:150},{label:"Download",elementKey:"callStats.tx",renderFunction:u.nO,width:150}],isLoading:!1,records:t,entityName:"Traces",idField:"api",customEmptyMessage:n?"No Traced elements received yet":"Trace is not started yet",customPaperHeight:"calc(100vh - 292px)",autoScrollToBottom:!0})})]})})})]})}},5332:(e,t,n)=>{t.vj=t.Ay=void 0;var r=n(4061);Object.defineProperty(t,"Ay",{enumerable:!0,get:function(){return r.useWebSocket}});var o=n(32690);var a=n(7205);Object.defineProperty(t,"vj",{enumerable:!0,get:function(){return a.ReadyState}});var c=n(34386);var s=n(20858)},61360:function(e,t,n){var r=this&&this.__assign||function(){return r=Object.assign||function(e){for(var t,n=1,r=arguments.length;n{Object.defineProperty(t,"__esModule",{value:!0}),t.isEventSourceSupported=t.isReactNative=t.ReadyState=t.DEFAULT_HEARTBEAT=t.UNPARSABLE_JSON_OBJECT=t.DEFAULT_RECONNECT_INTERVAL_MS=t.DEFAULT_RECONNECT_LIMIT=t.SOCKET_IO_PING_CODE=t.SOCKET_IO_PATH=t.SOCKET_IO_PING_INTERVAL=t.DEFAULT_EVENT_SOURCE_OPTIONS=t.EMPTY_EVENT_HANDLERS=t.DEFAULT_OPTIONS=void 0;t.DEFAULT_OPTIONS={},t.EMPTY_EVENT_HANDLERS={},t.DEFAULT_EVENT_SOURCE_OPTIONS={withCredentials:!1,events:t.EMPTY_EVENT_HANDLERS},t.SOCKET_IO_PING_INTERVAL=25e3,t.SOCKET_IO_PATH="/socket.io/?EIO=3&transport=websocket",t.SOCKET_IO_PING_CODE="2",t.DEFAULT_RECONNECT_LIMIT=20,t.DEFAULT_RECONNECT_INTERVAL_MS=5e3,t.UNPARSABLE_JSON_OBJECT={},t.DEFAULT_HEARTBEAT={message:"ping",timeout:6e4,interval:25e3},function(e){e[e.UNINSTANTIATED=-1]="UNINSTANTIATED",e[e.CONNECTING=0]="CONNECTING",e[e.OPEN=1]="OPEN",e[e.CLOSING=2]="CLOSING",e[e.CLOSED=3]="CLOSED"}(t.ReadyState||(t.ReadyState={}));t.isReactNative="undefined"!==typeof navigator&&"ReactNative"===navigator.product,t.isEventSourceSupported=!t.isReactNative&&function(){try{return"EventSource"in globalThis}catch(e){return!1}}()},63791:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createOrJoinSocket=void 0;var r=n(59596),o=n(7205),a=n(61360),c=n(31961),s=n(1875);t.createOrJoinSocket=function(e,t,n,u,i,l,d,f){if(!o.isEventSourceSupported&&u.current.eventSourceOptions)throw o.isReactNative?new Error("EventSource is not supported in ReactNative"):new Error("EventSource is not supported");if(u.current.share){var p=null;void 0===r.sharedWebSockets[t]?(r.sharedWebSockets[t]=u.current.eventSourceOptions?new EventSource(t,u.current.eventSourceOptions):new WebSocket(t,u.current.protocols),e.current=r.sharedWebSockets[t],n(o.ReadyState.CONNECTING),p=(0,c.attachSharedListeners)(r.sharedWebSockets[t],t,u,f)):(e.current=r.sharedWebSockets[t],n(r.sharedWebSockets[t].readyState));var v={setLastMessage:i,setReadyState:n,optionsRef:u,reconnectCount:d,reconnect:l};return(0,s.addSubscriber)(t,v),function(e,t,n,a,c){return function(){if((0,s.removeSubscriber)(e,t),!(0,s.hasSubscribers)(e)){try{var u=r.sharedWebSockets[e];u instanceof WebSocket&&(u.onclose=function(e){n.current.onClose&&n.current.onClose(e),a(o.ReadyState.CLOSED)}),u.close()}catch(i){}c&&c(),delete r.sharedWebSockets[e]}}}(t,v,u,n,p)}if(e.current=u.current.eventSourceOptions?new EventSource(t,u.current.eventSourceOptions):new WebSocket(t,u.current.protocols),n(o.ReadyState.CONNECTING),!e.current)throw new Error("WebSocket failed to be created");return(0,a.attachListeners)(e.current,{setLastMessage:i,setReadyState:n},u,l.current,d,f)}},12852:function(e,t,n){var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,a){function c(e){try{u(r.next(e))}catch(t){a(t)}}function s(e){try{u(r.throw(e))}catch(t){a(t)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(c,s)}u((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,a,c={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(;c;)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 c.label++,{value:a[1],done:!1};case 5:c.label++,r=a[1],a=[0];continue;case 7:a=c.ops.pop(),c.trys.pop();continue;default:if(!(o=(o=c.trys).length>0&&o[o.length-1])&&(6===a[0]||2===a[0])){c=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]{Object.defineProperty(t,"__esModule",{value:!0}),t.resetWebSockets=t.sharedWebSockets=void 0,t.sharedWebSockets={};t.resetWebSockets=function(e){if(e&&t.sharedWebSockets.hasOwnProperty(e))delete t.sharedWebSockets[e];else for(var n in t.sharedWebSockets)t.sharedWebSockets.hasOwnProperty(n)&&delete t.sharedWebSockets[n]}},98540:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.heartbeat=void 0;var r=n(7205);t.heartbeat=function(e,t){var n=t||{},o=n.interval,a=void 0===o?r.DEFAULT_HEARTBEAT.interval:o,c=n.timeout,s=void 0===c?r.DEFAULT_HEARTBEAT.timeout:c,u=n.message,i=void 0===u?r.DEFAULT_HEARTBEAT.message:u,l=!1,d=setInterval((function(){try{"function"===typeof i?e.send(i()):e.send(i)}catch(t){}}),a),f=setInterval((function(){l?l=!1:e.close()}),s);return e.addEventListener("close",(function(){clearInterval(d),clearInterval(f)})),function(){l=!0}}},1875:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.resetSubscribers=t.removeSubscriber=t.addSubscriber=t.hasSubscribers=t.getSubscribers=void 0;var n={},r=[];t.getSubscribers=function(e){return(0,t.hasSubscribers)(e)?Array.from(n[e]):r};t.hasSubscribers=function(e){var t;return(null===(t=n[e])||void 0===t?void 0:t.size)>0};t.addSubscriber=function(e,t){n[e]=n[e]||new Set,n[e].add(t)};t.removeSubscriber=function(e,t){n[e].delete(t)};t.resetSubscribers=function(e){if(e&&n.hasOwnProperty(e))delete n[e];else for(var t in n)n.hasOwnProperty(t)&&delete n[t]}},81808:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.websocketWrapper=void 0;t.websocketWrapper=function(e,t){return new Proxy(e,{get:function(e,n){var r=e[n];return"reconnect"===n?t:"function"===typeof r?(console.error("Calling methods directly on the websocket is not supported at this moment. You must use the methods returned by useWebSocket."),function(){}):r},set:function(e,t,n){return/^on/.test(t)?(console.warn("The websocket's event handlers should be defined through the options object passed into useWebSocket."),!1):(e[t]=n,!0)}})},t.default=t.websocketWrapper},35304:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.setUpSocketIOPing=t.appendQueryParams=t.parseSocketIOUrl=void 0;var r=n(7205);t.parseSocketIOUrl=function(e){if(e){var t=/^https|wss/.test(e),n=e.replace(/^(https?|wss?)(:\/\/)?/,"").replace(/\/$/,"");return"".concat(o=t?"wss":"ws","://").concat(n).concat(r.SOCKET_IO_PATH)}if(""===e){var o=(t=/^https/.test(window.location.protocol))?"wss":"ws",a=window.location.port?":".concat(window.location.port):"";return"".concat(o,"://").concat(window.location.hostname).concat(a).concat(r.SOCKET_IO_PATH)}return e};t.appendQueryParams=function(e,t){void 0===t&&(t={});var n=/\?([\w]+=[\w]+)/.test(e),r="".concat(Object.entries(t).reduce((function(e,t){var n=t[0],r=t[1];return e+"".concat(n,"=").concat(r,"&")}),"").slice(0,-1));return"".concat(e).concat(n?"&":"?").concat(r)};t.setUpSocketIOPing=function(e,t){void 0===t&&(t=r.SOCKET_IO_PING_INTERVAL);return window.setInterval((function(){return e(r.SOCKET_IO_PING_CODE)}),t)}},34386:function(e,t,n){var r=this&&this.__assign||function(){return r=Object.assign||function(e){for(var t,n=1,r=arguments.length;n0&&o[o.length-1])&&(6===a[0]||2===a[0])){c=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]{Object.defineProperty(t,"__esModule",{value:!0}),t.resetGlobalState=t.assertIsWebSocket=void 0;var r=n(59596),o=n(1875);t.assertIsWebSocket=function(e,t){if(!t&&e instanceof WebSocket===!1)throw new Error("")},t.resetGlobalState=function(e){(0,o.resetSubscribers)(e),(0,r.resetWebSockets)(e)}}}]); +//# sourceMappingURL=843.d7a5defb.chunk.js.map \ No newline at end of file diff --git a/web-app/build/static/js/843.d7a5defb.chunk.js.map b/web-app/build/static/js/843.d7a5defb.chunk.js.map new file mode 100644 index 0000000000..4bd4b035de --- /dev/null +++ b/web-app/build/static/js/843.d7a5defb.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/843.d7a5defb.chunk.js","mappings":"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","sources":["screens/Console/Trace/Trace.tsx","../node_modules/react-use-websocket/src/index.ts","../node_modules/react-use-websocket/src/lib/attach-listener.ts","../node_modules/react-use-websocket/src/lib/attach-shared-listeners.ts","../node_modules/react-use-websocket/src/lib/constants.ts","../node_modules/react-use-websocket/src/lib/create-or-join.ts","../node_modules/react-use-websocket/src/lib/get-url.ts","../node_modules/react-use-websocket/src/lib/globals.ts","../node_modules/react-use-websocket/src/lib/heartbeat.ts","../node_modules/react-use-websocket/src/lib/manage-subscribers.ts","../node_modules/react-use-websocket/src/lib/proxy.ts","../node_modules/react-use-websocket/src/lib/socket-io.ts","../node_modules/react-use-websocket/src/lib/use-event-source.ts","../node_modules/react-use-websocket/src/lib/use-socket-io.ts","../node_modules/react-use-websocket/src/lib/use-websocket.ts","../node_modules/react-use-websocket/src/lib/util.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 { Fragment, useEffect, useState } from \"react\";\nimport { DateTime } from \"luxon\";\nimport { useSelector } from \"react-redux\";\nimport {\n Box,\n breakPoints,\n Button,\n Checkbox,\n DataTable,\n FilterIcon,\n Grid,\n InputBox,\n PageLayout,\n} from \"mds\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { TraceMessage } from \"./types\";\nimport { niceBytes, timeFromDate } from \"../../../common/utils\";\nimport { wsProtocol } from \"../../../utils/wsUtils\";\nimport {\n setTraceStarted,\n traceMessageReceived,\n traceResetMessages,\n} from \"./traceSlice\";\nimport { setHelpName } from \"../../../systemSlice\";\nimport TooltipWrapper from \"../Common/TooltipWrapper/TooltipWrapper\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport HelpMenu from \"../HelpMenu\";\nimport useWebSocket, { ReadyState } from \"react-use-websocket\";\n\nconst Trace = () => {\n const dispatch = useAppDispatch();\n\n const messages = useSelector((state: AppState) => state.trace.messages);\n const traceStarted = useSelector(\n (state: AppState) => state.trace.traceStarted,\n );\n\n const [statusCode, setStatusCode] = useState(\"\");\n const [method, setMethod] = useState(\"\");\n const [func, setFunc] = useState(\"\");\n const [path, setPath] = useState(\"\");\n const [threshold, setThreshold] = useState(0);\n const [all, setAll] = useState(false);\n const [s3, setS3] = useState(true);\n const [internal, setInternal] = useState(false);\n const [storage, setStorage] = useState(false);\n const [os, setOS] = useState(false);\n const [errors, setErrors] = useState(false);\n\n const [toggleFilter, setToggleFilter] = useState(false);\n const [logActive, setLogActive] = useState(false);\n const [wsUrl, setWsUrl] = useState(\"\");\n\n useEffect(() => {\n const url = new URL(window.location.toString());\n const wsProt = wsProtocol(url.protocol);\n const port = process.env.NODE_ENV === \"development\" ? \"9090\" : url.port;\n const calls = all\n ? \"all\"\n : (() => {\n const c = [];\n if (s3) c.push(\"s3\");\n if (internal) c.push(\"internal\");\n if (storage) c.push(\"storage\");\n if (os) c.push(\"os\");\n return c.join(\",\");\n })();\n\n // check if we are using base path, if not this always is `/`\n const baseLocation = new URL(document.baseURI).pathname;\n\n const wsUrl = new URL(\n `${wsProt}://${url.hostname}:${port}${baseLocation}ws/trace`,\n );\n wsUrl.searchParams.append(\"calls\", calls);\n wsUrl.searchParams.append(\"threshold\", threshold.toString());\n wsUrl.searchParams.append(\"onlyErrors\", errors ? \"yes\" : \"no\");\n wsUrl.searchParams.append(\"statusCode\", statusCode);\n wsUrl.searchParams.append(\"method\", method);\n wsUrl.searchParams.append(\"funcname\", func);\n wsUrl.searchParams.append(\"path\", path);\n setWsUrl(wsUrl.href);\n }, [\n all,\n s3,\n internal,\n storage,\n os,\n threshold,\n errors,\n statusCode,\n method,\n func,\n path,\n ]);\n\n const { sendMessage, lastJsonMessage, readyState } =\n useWebSocket(\n wsUrl,\n {\n heartbeat: {\n message: \"ok\",\n interval: 10 * 1000, // send ok every 10 seconds\n timeout: 365 * 24 * 60 * 60 * 1000, // disconnect after 365 days (workaround, because heartbeat gets no response)\n },\n },\n logActive,\n );\n\n useEffect(() => {\n if (readyState === ReadyState.CONNECTING) {\n dispatch(traceResetMessages());\n } else if (readyState === ReadyState.OPEN) {\n dispatch(setTraceStarted(true));\n } else if (readyState === ReadyState.CLOSED) {\n dispatch(setTraceStarted(false));\n }\n }, [readyState, dispatch, sendMessage]);\n\n useEffect(() => {\n if (lastJsonMessage) {\n lastJsonMessage.ptime = DateTime.fromISO(lastJsonMessage.time).toJSDate();\n lastJsonMessage.key = Math.random();\n dispatch(traceMessageReceived(lastJsonMessage));\n }\n }, [lastJsonMessage, dispatch]);\n\n useEffect(() => {\n dispatch(setHelpName(\"trace\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n } />\n\n \n \n \n \n \n Calls to Trace\n \n \n \n setAll(!all)}\n value={\"all\"}\n disabled={traceStarted}\n />\n setS3(!s3)}\n value={\"s3\"}\n disabled={all || traceStarted}\n />\n setInternal(!internal)}\n value={\"internal\"}\n disabled={all || traceStarted}\n />\n setStorage(!storage)}\n value={\"storage\"}\n disabled={all || traceStarted}\n />\n setOS(!os)}\n value={\"os\"}\n disabled={all || traceStarted}\n />\n \n \n \n setToggleFilter(!toggleFilter)}\n label={\"Filters\"}\n icon={}\n variant={\"regular\"}\n className={\"filters-toggle-button\"}\n style={{\n width: \"118px\",\n background: toggleFilter ? \"rgba(8, 28, 66, 0.04)\" : \"\",\n }}\n />\n \n\n {!traceStarted && (\n setLogActive(true)}\n style={{\n width: \"118px\",\n }}\n />\n )}\n {traceStarted && (\n setLogActive(false)}\n style={{\n width: \"118px\",\n }}\n />\n )}\n \n \n \n {toggleFilter ? (\n \n \n setStatusCode(e.target.value)}\n disabled={traceStarted}\n />\n\n setFunc(e.target.value)}\n disabled={traceStarted}\n />\n\n setMethod(e.target.value)}\n disabled={traceStarted}\n />\n \n \n \n setPath(e.target.value)}\n disabled={traceStarted}\n />\n \n \n setThreshold(parseInt(e.target.value))}\n disabled={traceStarted}\n />\n \n \n \n setErrors(!errors)}\n value={\"only_errors\"}\n disabled={traceStarted}\n />\n \n \n ) : null}\n\n \n \n Trace Results\n \n \n \n {\n const timeParse = new Date(time);\n return timeFromDate(timeParse);\n },\n width: 100,\n },\n { label: \"Name\", elementKey: \"api\" },\n {\n label: \"Status\",\n elementKey: \"\",\n renderFunction: (fullElement: TraceMessage) =>\n `${fullElement.statusCode} ${fullElement.statusMsg}`,\n renderFullObject: true,\n },\n {\n label: \"Location\",\n elementKey: \"configuration_id\",\n renderFunction: (fullElement: TraceMessage) =>\n `${fullElement.host} ${fullElement.client}`,\n renderFullObject: true,\n },\n {\n label: \"Load Time\",\n elementKey: \"callStats.duration\",\n width: 150,\n },\n {\n label: \"Upload\",\n elementKey: \"callStats.rx\",\n renderFunction: niceBytes,\n width: 150,\n },\n {\n label: \"Download\",\n elementKey: \"callStats.tx\",\n renderFunction: niceBytes,\n width: 150,\n },\n ]}\n isLoading={false}\n records={messages}\n entityName=\"Traces\"\n idField=\"api\"\n customEmptyMessage={\n traceStarted\n ? \"No Traced elements received yet\"\n : \"Trace is not started yet\"\n }\n customPaperHeight={\"calc(100vh - 292px)\"}\n autoScrollToBottom\n />\n \n \n \n \n \n );\n};\n\nexport default Trace;\n","export { useWebSocket as default } from './lib/use-websocket';\n\nexport { SendMessage, Options } from './lib/types';\n\nexport { useSocketIO } from './lib/use-socket-io';\n\nexport { ReadyState } from './lib/constants';\n\nexport { useEventSource } from './lib/use-event-source';\n\nexport { resetGlobalState } from './lib/util';\n","import { MutableRefObject } from 'react';\nimport { setUpSocketIOPing } from './socket-io';\nimport { heartbeat } from './heartbeat';\nimport {\n DEFAULT_RECONNECT_LIMIT,\n DEFAULT_RECONNECT_INTERVAL_MS,\n ReadyState,\n isEventSourceSupported,\n} from './constants';\nimport { Options, SendMessage, WebSocketLike } from './types';\nimport { assertIsWebSocket } from './util';\n\nexport interface Setters {\n setLastMessage: (message: WebSocketEventMap['message']) => void;\n setReadyState: (readyState: ReadyState) => void;\n}\n\nconst bindMessageHandler = (\n webSocketInstance: WebSocketLike,\n optionsRef: MutableRefObject,\n setLastMessage: Setters['setLastMessage'],\n) => {\n let heartbeatCb: () => void;\n\n if (optionsRef.current.heartbeat && webSocketInstance instanceof WebSocket) {\n const heartbeatOptions =\n typeof optionsRef.current.heartbeat === \"boolean\"\n ? undefined\n : optionsRef.current.heartbeat;\n heartbeatCb = heartbeat(webSocketInstance, heartbeatOptions);\n }\n\n webSocketInstance.onmessage = (message: WebSocketEventMap['message']) => {\n heartbeatCb?.();\n optionsRef.current.onMessage && optionsRef.current.onMessage(message);\n if (typeof optionsRef.current.filter === 'function' && optionsRef.current.filter(message) !== true) {\n return;\n }\n if (\n optionsRef.current.heartbeat &&\n typeof optionsRef.current.heartbeat !== \"boolean\" &&\n optionsRef.current.heartbeat?.returnMessage === message.data\n )\n return;\n\n setLastMessage(message);\n };\n};\n\nconst bindOpenHandler = (\n webSocketInstance: WebSocketLike,\n optionsRef: MutableRefObject,\n setReadyState: Setters['setReadyState'],\n reconnectCount: MutableRefObject,\n) => {\n webSocketInstance.onopen = (event: WebSocketEventMap['open']) => {\n optionsRef.current.onOpen && optionsRef.current.onOpen(event);\n reconnectCount.current = 0;\n setReadyState(ReadyState.OPEN);\n };\n};\n\nconst bindCloseHandler = (\n webSocketInstance: WebSocketLike,\n optionsRef: MutableRefObject,\n setReadyState: Setters['setReadyState'],\n reconnect: () => void,\n reconnectCount: MutableRefObject,\n) => {\n if (isEventSourceSupported && webSocketInstance instanceof EventSource) {\n return () => {};\n }\n assertIsWebSocket(webSocketInstance, optionsRef.current.skipAssert);\n let reconnectTimeout: number;\n\n webSocketInstance.onclose = (event: WebSocketEventMap['close']) => {\n optionsRef.current.onClose && optionsRef.current.onClose(event);\n setReadyState(ReadyState.CLOSED);\n if (optionsRef.current.shouldReconnect && optionsRef.current.shouldReconnect(event)) {\n const reconnectAttempts = optionsRef.current.reconnectAttempts ?? DEFAULT_RECONNECT_LIMIT;\n if (reconnectCount.current < reconnectAttempts) {\n const nextReconnectInterval = typeof optionsRef.current.reconnectInterval === 'function' ?\n optionsRef.current.reconnectInterval(reconnectCount.current) :\n optionsRef.current.reconnectInterval;\n\n reconnectTimeout = window.setTimeout(() => {\n reconnectCount.current++;\n reconnect();\n }, nextReconnectInterval ?? DEFAULT_RECONNECT_INTERVAL_MS);\n } else {\n optionsRef.current.onReconnectStop && optionsRef.current.onReconnectStop(reconnectAttempts);\n console.warn(`Max reconnect attempts of ${reconnectAttempts} exceeded`);\n }\n }\n };\n\n return () => reconnectTimeout && window.clearTimeout(reconnectTimeout);\n};\n\nconst bindErrorHandler = (\n webSocketInstance: WebSocketLike,\n optionsRef: MutableRefObject,\n setReadyState: Setters['setReadyState'],\n reconnect: () => void,\n reconnectCount: MutableRefObject,\n) => {\n let reconnectTimeout: number;\n\n webSocketInstance.onerror = (error: WebSocketEventMap['error']) => {\n optionsRef.current.onError && optionsRef.current.onError(error);\n if (isEventSourceSupported && webSocketInstance instanceof EventSource) {\n optionsRef.current.onClose && optionsRef.current.onClose({\n ...error,\n code: 1006,\n reason: `An error occurred with the EventSource: ${error}`,\n wasClean: false,\n });\n\n setReadyState(ReadyState.CLOSED);\n webSocketInstance.close();\n }\n \n if (optionsRef.current.retryOnError) {\n if (reconnectCount.current < (optionsRef.current.reconnectAttempts ?? DEFAULT_RECONNECT_LIMIT)) {\n const nextReconnectInterval = typeof optionsRef.current.reconnectInterval === 'function' ?\n optionsRef.current.reconnectInterval(reconnectCount.current) :\n optionsRef.current.reconnectInterval;\n\n reconnectTimeout = window.setTimeout(() => {\n reconnectCount.current++;\n reconnect();\n }, nextReconnectInterval ?? DEFAULT_RECONNECT_INTERVAL_MS);\n } else {\n optionsRef.current.onReconnectStop && optionsRef.current.onReconnectStop(optionsRef.current.reconnectAttempts as number);\n console.warn(`Max reconnect attempts of ${optionsRef.current.reconnectAttempts} exceeded`);\n }\n }\n };\n\n return () => reconnectTimeout && window.clearTimeout(reconnectTimeout);\n};\n\nexport const attachListeners = (\n webSocketInstance: WebSocketLike,\n setters: Setters,\n optionsRef: MutableRefObject,\n reconnect: () => void,\n reconnectCount: MutableRefObject,\n sendMessage: SendMessage,\n ): (() => void) => {\n const { setLastMessage, setReadyState } = setters;\n\n let interval: number;\n let cancelReconnectOnClose: () => void;\n let cancelReconnectOnError: () => void;\n\n if (optionsRef.current.fromSocketIO) {\n interval = setUpSocketIOPing(sendMessage);\n }\n\n bindMessageHandler(\n webSocketInstance,\n optionsRef,\n setLastMessage,\n );\n\n bindOpenHandler(\n webSocketInstance,\n optionsRef,\n setReadyState,\n reconnectCount,\n );\n\n cancelReconnectOnClose = bindCloseHandler(\n webSocketInstance,\n optionsRef,\n setReadyState,\n reconnect,\n reconnectCount,\n );\n\n cancelReconnectOnError = bindErrorHandler(\n webSocketInstance,\n optionsRef,\n setReadyState,\n reconnect,\n reconnectCount,\n );\n\n return () => {\n setReadyState(ReadyState.CLOSING);\n cancelReconnectOnClose();\n cancelReconnectOnError();\n webSocketInstance.close();\n if (interval) clearInterval(interval);\n };\n};\n","import { sharedWebSockets } from './globals';\nimport { DEFAULT_RECONNECT_LIMIT, DEFAULT_RECONNECT_INTERVAL_MS, ReadyState, isEventSourceSupported } from './constants';\nimport { getSubscribers } from './manage-subscribers';\nimport { MutableRefObject } from 'react';\nimport { HeartbeatOptions, Options, SendMessage, WebSocketLike } from './types';\nimport { setUpSocketIOPing } from './socket-io';\nimport { heartbeat } from './heartbeat';\n\nconst bindMessageHandler = (\n webSocketInstance: WebSocketLike,\n url: string,\n heartbeatOptions?: boolean | HeartbeatOptions\n) => {\n let onMessageCb: () => void;\n\n if (heartbeatOptions && webSocketInstance instanceof WebSocket) {\n onMessageCb = heartbeat(webSocketInstance, typeof heartbeatOptions === 'boolean' ? undefined : heartbeatOptions);\n }\n\n webSocketInstance.onmessage = (message: WebSocketEventMap['message']) => {\n onMessageCb?.();\n getSubscribers(url).forEach(subscriber => {\n if (subscriber.optionsRef.current.onMessage) {\n subscriber.optionsRef.current.onMessage(message);\n }\n\n if (\n typeof subscriber.optionsRef.current.filter === 'function' &&\n subscriber.optionsRef.current.filter(message) !== true\n ) {\n return;\n }\n\n if (\n heartbeatOptions &&\n typeof heartbeatOptions !== \"boolean\" &&\n heartbeatOptions?.returnMessage === message.data\n )\n return;\n\n subscriber.setLastMessage(message);\n });\n };\n};\n\nconst bindOpenHandler = (\n webSocketInstance: WebSocketLike,\n url: string,\n) => {\n webSocketInstance.onopen = (event: WebSocketEventMap['open']) => {\n getSubscribers(url).forEach(subscriber => {\n subscriber.reconnectCount.current = 0;\n if (subscriber.optionsRef.current.onOpen) {\n subscriber.optionsRef.current.onOpen(event);\n }\n\n subscriber.setReadyState(ReadyState.OPEN);\n });\n };\n};\n\nconst bindCloseHandler = (\n webSocketInstance: WebSocketLike,\n url: string,\n) => {\n if (webSocketInstance instanceof WebSocket) {\n webSocketInstance.onclose = (event: WebSocketEventMap['close']) => {\n getSubscribers(url).forEach(subscriber => {\n if (subscriber.optionsRef.current.onClose) {\n subscriber.optionsRef.current.onClose(event);\n }\n \n subscriber.setReadyState(ReadyState.CLOSED);\n });\n \n delete sharedWebSockets[url];\n \n getSubscribers(url).forEach(subscriber => {\n if (\n subscriber.optionsRef.current.shouldReconnect &&\n subscriber.optionsRef.current.shouldReconnect(event)\n ) {\n const reconnectAttempts = subscriber.optionsRef.current.reconnectAttempts ?? DEFAULT_RECONNECT_LIMIT;\n if (subscriber.reconnectCount.current < reconnectAttempts) {\n const nextReconnectInterval = typeof subscriber.optionsRef.current.reconnectInterval === 'function' ?\n subscriber.optionsRef.current.reconnectInterval(subscriber.reconnectCount.current) :\n subscriber.optionsRef.current.reconnectInterval;\n\n setTimeout(() => {\n subscriber.reconnectCount.current++;\n subscriber.reconnect.current();\n }, nextReconnectInterval ?? DEFAULT_RECONNECT_INTERVAL_MS);\n } else {\n subscriber.optionsRef.current.onReconnectStop && subscriber.optionsRef.current.onReconnectStop(subscriber.optionsRef.current.reconnectAttempts as number);\n console.warn(`Max reconnect attempts of ${reconnectAttempts} exceeded`);\n }\n }\n });\n };\n }\n};\n\nconst bindErrorHandler = (\n webSocketInstance: WebSocketLike,\n url: string,\n) => {\n webSocketInstance.onerror = (error: WebSocketEventMap['error']) => {\n getSubscribers(url).forEach(subscriber => {\n if (subscriber.optionsRef.current.onError) {\n subscriber.optionsRef.current.onError(error);\n }\n if (isEventSourceSupported && webSocketInstance instanceof EventSource) {\n subscriber.optionsRef.current.onClose && subscriber.optionsRef.current.onClose({\n ...error,\n code: 1006,\n reason: `An error occurred with the EventSource: ${error}`,\n wasClean: false,\n });\n \n subscriber.setReadyState(ReadyState.CLOSED);\n }\n });\n if (isEventSourceSupported && webSocketInstance instanceof EventSource) {\n webSocketInstance.close();\n }\n };\n};\n\nexport const attachSharedListeners = (\n webSocketInstance: WebSocketLike,\n url: string,\n optionsRef: MutableRefObject,\n sendMessage: SendMessage,\n) => {\n let interval: number;\n\n if (optionsRef.current.fromSocketIO) {\n interval = setUpSocketIOPing(sendMessage);\n }\n\n bindMessageHandler(webSocketInstance, url, optionsRef.current.heartbeat);\n bindCloseHandler(webSocketInstance, url);\n bindOpenHandler(webSocketInstance, url);\n bindErrorHandler(webSocketInstance, url);\n\n return () => {\n if (interval) clearInterval(interval);\n };\n};\n","import { EventSourceEventHandlers, EventSourceOptions } from \"./types\";\n\nconst MILLISECONDS = 1;\nconst SECONDS = 1000 * MILLISECONDS;\n\nexport const DEFAULT_OPTIONS = {};\nexport const EMPTY_EVENT_HANDLERS: EventSourceEventHandlers = {};\nexport const DEFAULT_EVENT_SOURCE_OPTIONS: EventSourceOptions = {\n withCredentials: false,\n events: EMPTY_EVENT_HANDLERS,\n};\nexport const SOCKET_IO_PING_INTERVAL = 25 * SECONDS;\nexport const SOCKET_IO_PATH = '/socket.io/?EIO=3&transport=websocket';\nexport const SOCKET_IO_PING_CODE = '2';\nexport const DEFAULT_RECONNECT_LIMIT = 20;\nexport const DEFAULT_RECONNECT_INTERVAL_MS = 5000;\nexport const UNPARSABLE_JSON_OBJECT = {};\nexport const DEFAULT_HEARTBEAT = {\n message: 'ping',\n timeout: 60000,\n interval: 25000,\n};\n\nexport enum ReadyState {\n UNINSTANTIATED = -1,\n CONNECTING = 0,\n OPEN = 1,\n CLOSING = 2,\n CLOSED = 3,\n}\n\nconst eventSourceSupported = () => {\n try {\n return 'EventSource' in globalThis;\n } catch (e) {\n return false;\n }\n}\n\nexport const isReactNative = typeof navigator !== 'undefined' && navigator.product === 'ReactNative';\nexport const isEventSourceSupported = !isReactNative && eventSourceSupported();\n","import { MutableRefObject } from 'react';\nimport { sharedWebSockets } from './globals';\nimport { Options, SendMessage, Subscriber, WebSocketLike } from './types';\nimport { isEventSourceSupported, ReadyState, isReactNative } from './constants';\nimport { attachListeners } from './attach-listener';\nimport { attachSharedListeners } from './attach-shared-listeners';\nimport { addSubscriber, removeSubscriber, hasSubscribers } from './manage-subscribers';\n\n//TODO ensure that all onClose callbacks are called\n\nconst cleanSubscribers = (\n url: string,\n subscriber: Subscriber,\n optionsRef: MutableRefObject,\n setReadyState: (readyState: ReadyState) => void,\n clearSocketIoPingInterval: (() => void) | null,\n) => {\n return () => {\n removeSubscriber(url, subscriber);\n if (!hasSubscribers(url)) {\n try {\n const socketLike = sharedWebSockets[url];\n if (socketLike instanceof WebSocket) {\n socketLike.onclose = (event: WebSocketEventMap['close']) => {\n if (optionsRef.current.onClose) {\n optionsRef.current.onClose(event);\n }\n setReadyState(ReadyState.CLOSED);\n };\n }\n socketLike.close();\n } catch (e) {\n\n }\n if (clearSocketIoPingInterval) clearSocketIoPingInterval();\n\n delete sharedWebSockets[url];\n }\n }\n};\n\nexport const createOrJoinSocket = (\n webSocketRef: MutableRefObject,\n url: string,\n setReadyState: (readyState: ReadyState) => void,\n optionsRef: MutableRefObject,\n setLastMessage: (message: WebSocketEventMap['message']) => void,\n startRef: MutableRefObject<() => void>,\n reconnectCount: MutableRefObject,\n sendMessage: SendMessage,\n): (() => void) => {\n if (!isEventSourceSupported && optionsRef.current.eventSourceOptions) {\n if (isReactNative) {\n throw new Error('EventSource is not supported in ReactNative');\n } else {\n throw new Error('EventSource is not supported');\n }\n }\n\n if (optionsRef.current.share) {\n let clearSocketIoPingInterval: ((() => void) | null) = null;\n if (sharedWebSockets[url] === undefined) {\n sharedWebSockets[url] = optionsRef.current.eventSourceOptions ?\n new EventSource(url, optionsRef.current.eventSourceOptions) :\n new WebSocket(url, optionsRef.current.protocols);\n webSocketRef.current = sharedWebSockets[url];\n setReadyState(ReadyState.CONNECTING);\n clearSocketIoPingInterval = attachSharedListeners(\n sharedWebSockets[url],\n url,\n optionsRef,\n sendMessage,\n );\n } else {\n webSocketRef.current = sharedWebSockets[url];\n setReadyState(sharedWebSockets[url].readyState);\n }\n\n const subscriber: Subscriber = {\n setLastMessage,\n setReadyState,\n optionsRef,\n reconnectCount,\n reconnect: startRef,\n };\n \n addSubscriber(url, subscriber);\n\n return cleanSubscribers(\n url,\n subscriber,\n optionsRef,\n setReadyState,\n clearSocketIoPingInterval,\n );\n } else {\n webSocketRef.current = optionsRef.current.eventSourceOptions ?\n new EventSource(url, optionsRef.current.eventSourceOptions) :\n new WebSocket(url, optionsRef.current.protocols);\n setReadyState(ReadyState.CONNECTING);\n if (!webSocketRef.current) {\n throw new Error('WebSocket failed to be created');\n }\n\n return attachListeners(\n webSocketRef.current,\n {\n setLastMessage,\n setReadyState\n },\n optionsRef,\n startRef.current,\n reconnectCount,\n sendMessage,\n );\n }\n};\n","import { MutableRefObject } from 'react';\nimport { parseSocketIOUrl, appendQueryParams } from './socket-io';\nimport { Options } from './types';\nimport { DEFAULT_RECONNECT_INTERVAL_MS, DEFAULT_RECONNECT_LIMIT } from './constants';\n\nconst waitFor = (duration: number) => new Promise(resolve => window.setTimeout(resolve, duration));\n\nexport const getUrl = async (\n url: string | (() => string | Promise),\n optionsRef: MutableRefObject,\n retriedAttempts: number = 0,\n): Promise => {\n let convertedUrl: string;\n\n if (typeof url === 'function') {\n try {\n convertedUrl = await url();\n } catch (e) {\n if (\n optionsRef.current.retryOnError\n ) {\n const reconnectLimit = optionsRef.current.reconnectAttempts ?? DEFAULT_RECONNECT_LIMIT;\n if (retriedAttempts < reconnectLimit) {\n const nextReconnectInterval = typeof optionsRef.current.reconnectInterval === 'function' ?\n optionsRef.current.reconnectInterval(retriedAttempts) :\n optionsRef.current.reconnectInterval;\n \n await waitFor(nextReconnectInterval ?? DEFAULT_RECONNECT_INTERVAL_MS);\n return getUrl(url, optionsRef, retriedAttempts + 1);\n } else {\n optionsRef.current.onReconnectStop?.(retriedAttempts);\n return null;\n }\n } else {\n return null;\n }\n }\n } else {\n convertedUrl = url;\n }\n\n const parsedUrl = optionsRef.current.fromSocketIO ?\n parseSocketIOUrl(convertedUrl) :\n convertedUrl;\n\n const parsedWithQueryParams = optionsRef.current.queryParams ?\n appendQueryParams(\n parsedUrl,\n optionsRef.current.queryParams\n ) :\n parsedUrl;\n\n return parsedWithQueryParams;\n};\n","import { WebSocketLike } from \"./types\";\n\nexport interface SharedWebSockets {\n [url: string]: WebSocketLike;\n}\n\nexport const sharedWebSockets: SharedWebSockets = {};\n\nexport const resetWebSockets = (url?: string): void => {\n if (url && sharedWebSockets.hasOwnProperty(url)) {\n delete sharedWebSockets[url];\n } else {\n for (let url in sharedWebSockets){\n if (sharedWebSockets.hasOwnProperty(url)){\n delete sharedWebSockets[url];\n }\n }\n }\n}\n","import { DEFAULT_HEARTBEAT } from \"./constants\";\nimport { HeartbeatOptions } from \"./types\";\n\nexport function heartbeat(ws: WebSocket, options?: HeartbeatOptions): () => void {\n const {\n interval = DEFAULT_HEARTBEAT.interval,\n timeout = DEFAULT_HEARTBEAT.timeout,\n message = DEFAULT_HEARTBEAT.message,\n } = options || {};\n\n let messageAccepted = false;\n\n const pingTimer = setInterval(() => {\n try {\n if (typeof message === 'function') {\n ws.send(message());\n } else {\n ws.send(message);\n }\n } catch (error) {\n // do nothing\n }\n }, interval);\n\n const timeoutTimer = setInterval(() => {\n if (!messageAccepted) {\n ws.close();\n } else {\n messageAccepted = false;\n }\n }, timeout);\n\n ws.addEventListener(\"close\", () => {\n clearInterval(pingTimer);\n clearInterval(timeoutTimer);\n });\n\n return () => {\n messageAccepted = true;\n };\n}\n","import { Subscriber } from './types';\n\nexport type Subscribers = {\n [url: string]: Set,\n}\n \nconst subscribers: Subscribers = {};\nconst EMPTY_LIST: Subscriber[] = [];\n\nexport const getSubscribers = (url: string): Subscriber[] => {\n if (hasSubscribers(url)) {\n return Array.from(subscribers[url]);\n }\n return EMPTY_LIST;\n};\n\nexport const hasSubscribers = (url: string): boolean => {\n return subscribers[url]?.size > 0;\n};\n\nexport const addSubscriber = (url: string, subscriber: Subscriber): void => {\n subscribers[url] = subscribers[url] || new Set();\n subscribers[url].add(subscriber);\n};\n\nexport const removeSubscriber = (url: string, subscriber: Subscriber): void => {\n subscribers[url].delete(subscriber);\n};\n\nexport const resetSubscribers = (url?: string): void => {\n if (url && subscribers.hasOwnProperty(url)) {\n delete subscribers[url];\n } else {\n for (let url in subscribers){\n if (subscribers.hasOwnProperty(url)){\n delete subscribers[url];\n }\n }\n }\n}\n","import { MutableRefObject } from 'react';\n\ntype IfEquals =\n (() => T extends X ? 1 : 2) extends\n (() => T extends Y ? 1 : 2) ? A : B;\n\ntype WritableKeys = {\n [P in keyof T]-?: IfEquals<{ [Q in P]: T[P] }, { -readonly [Q in P]: T[P] }, P>\n}[keyof T];\n\nexport const websocketWrapper = (\n webSocket: WebSocket,\n start: MutableRefObject<() => void>,\n): WebSocket => {\n\n return new Proxy(webSocket, {\n get: (obj, key: keyof WebSocket) => {\n const val = obj[key];\n if ((key as any) === 'reconnect') return start;\n if (typeof val === 'function') {\n console.error('Calling methods directly on the websocket is not supported at this moment. You must use the methods returned by useWebSocket.');\n \n //Prevent error thrown by invoking a non-function\n return () => {};\n } else {\n return val;\n }\n },\n set: >(obj: WebSocket, key: T, val: WebSocket[T]) => {\n if (/^on/.test(key)) {\n console.warn('The websocket\\'s event handlers should be defined through the options object passed into useWebSocket.')\n return false;\n } else {\n obj[key] = val;\n return true;\n }\n },\n });\n};\n\nexport default websocketWrapper;\n","import { SOCKET_IO_PING_INTERVAL, SOCKET_IO_PATH, SOCKET_IO_PING_CODE } from './constants';\nimport { QueryParams, SendMessage } from './types';\n\nexport const parseSocketIOUrl = (url: string) => {\n if (url) {\n const isSecure = /^https|wss/.test(url);\n const strippedProtocol = url.replace(/^(https?|wss?)(:\\/\\/)?/, '');\n const removedFinalBackSlack = strippedProtocol.replace(/\\/$/, '');\n const protocol = isSecure ? 'wss' : 'ws';\n\n return `${protocol}://${removedFinalBackSlack}${SOCKET_IO_PATH}`;\n } else if (url === '') {\n const isSecure = /^https/.test(window.location.protocol);\n const protocol = isSecure ? 'wss' : 'ws';\n const port = window.location.port ? `:${window.location.port}` : '';\n\n return `${protocol}://${window.location.hostname}${port}${SOCKET_IO_PATH}`;\n }\n\n return url;\n};\n\nexport const appendQueryParams = (url: string, params: QueryParams = {}): string => {\n const hasParamsRegex = /\\?([\\w]+=[\\w]+)/;\n const alreadyHasParams = hasParamsRegex.test(url);\n\n const stringified = `${Object.entries(params).reduce((next, [key, value]) => {\n return next + `${key}=${value}&`;\n }, '').slice(0, -1)}`;\n\n return `${url}${alreadyHasParams ? '&' : '?'}${stringified}`;\n};\n\nexport const setUpSocketIOPing = (sendMessage: SendMessage, interval = SOCKET_IO_PING_INTERVAL) => {\n const ping = () => sendMessage(SOCKET_IO_PING_CODE);\n\n return window.setInterval(ping, interval);\n};\n","import { useEffect, useRef } from 'react'\nimport { useWebSocket } from './use-websocket'\nimport { DEFAULT_EVENT_SOURCE_OPTIONS, EMPTY_EVENT_HANDLERS } from './constants'\nimport { EventSourceOptions, Options, EventSourceHook, EventSourceEventHandlers } from './types';\n\nexport const useEventSource = (\n url: string | (() => string | Promise) | null,\n { withCredentials, events, ...options }: EventSourceOptions = DEFAULT_EVENT_SOURCE_OPTIONS,\n connect: boolean = true,\n): EventSourceHook => {\n const optionsWithEventSource: Options = {\n ...options,\n eventSourceOptions: {\n withCredentials,\n }\n };\n const eventsRef = useRef(EMPTY_EVENT_HANDLERS);\n if (events) {\n eventsRef.current = events\n }\n\n const {\n lastMessage,\n readyState,\n getWebSocket,\n } = useWebSocket(\n url,\n optionsWithEventSource,\n connect,\n );\n\n useEffect(() => {\n if (lastMessage?.type) {\n Object.entries(eventsRef.current).forEach(([type, handler]) => {\n if (type === lastMessage.type) {\n handler(lastMessage);\n }\n });\n }\n }, [lastMessage]);\n\n return {\n lastEvent: lastMessage,\n readyState,\n getEventSource: getWebSocket,\n };\n}\n","import { useMemo } from 'react'\nimport { useWebSocket } from './use-websocket'\nimport { DEFAULT_OPTIONS } from './constants'\nimport { Options, WebSocketHook } from './types';\n\nexport interface SocketIOMessageData {\n type: string,\n payload: T | null,\n}\n\nconst emptyEvent: SocketIOMessageData = {\n type: 'empty',\n payload: null,\n}\n\nconst getSocketData = (event: WebSocketEventMap['message'] | null): SocketIOMessageData => {\n if (!event || !event.data) {\n return emptyEvent\n }\n\n const match = event.data.match(/\\[.*]/)\n\n if (!match) {\n return emptyEvent\n }\n\n const data = JSON.parse(match)\n\n if (!Array.isArray(data) || !data[1]) {\n return emptyEvent\n }\n\n return {\n type: data[0],\n payload: data[1],\n }\n}\n\nexport const useSocketIO = (\n url: string | (() => string | Promise) | null,\n options: Options = DEFAULT_OPTIONS,\n connect: boolean = true,\n): WebSocketHook, SocketIOMessageData> => {\n const optionsWithSocketIO = useMemo(() => ({\n ...options,\n fromSocketIO: true,\n }), [])\n\n const {\n sendMessage,\n sendJsonMessage,\n lastMessage,\n readyState,\n getWebSocket,\n } = useWebSocket(\n\n url,\n optionsWithSocketIO,\n connect,\n );\n\n const socketIOLastMessage = useMemo(() =>\n getSocketData(lastMessage), [lastMessage]);\n\n return {\n sendMessage,\n sendJsonMessage,\n lastMessage: socketIOLastMessage,\n lastJsonMessage: socketIOLastMessage,\n readyState,\n getWebSocket,\n };\n}\n","import { useEffect, useRef, useState, useCallback, useMemo } from 'react';\nimport { flushSync } from 'react-dom';\nimport { DEFAULT_OPTIONS, isEventSourceSupported, ReadyState, UNPARSABLE_JSON_OBJECT } from './constants';\nimport { createOrJoinSocket } from './create-or-join';\nimport { getUrl } from './get-url';\nimport websocketWrapper from './proxy';\nimport {\n Options,\n ReadyStateState,\n SendMessage,\n SendJsonMessage,\n WebSocketMessage,\n WebSocketHook,\n WebSocketLike,\n} from './types';\nimport { assertIsWebSocket } from './util';\n\nexport const useWebSocket = (\n url: string | (() => string | Promise) | null,\n options: Options = DEFAULT_OPTIONS,\n connect: boolean = true,\n): WebSocketHook => {\n const [lastMessage, setLastMessage] = useState(null);\n const [readyState, setReadyState] = useState({});\n const lastJsonMessage: T = useMemo(() => {\n if (lastMessage) {\n try {\n return JSON.parse(lastMessage.data);\n } catch (e) {\n return UNPARSABLE_JSON_OBJECT;\n }\n }\n return null; \n },[lastMessage]);\n const convertedUrl = useRef(null);\n const webSocketRef = useRef(null);\n const startRef = useRef<() => void>(() => void 0);\n const reconnectCount = useRef(0);\n const messageQueue = useRef([]);\n const webSocketProxy = useRef(null);\n const optionsCache = useRef(options);\n optionsCache.current = options;\n\n const readyStateFromUrl: ReadyState =\n convertedUrl.current && readyState[convertedUrl.current] !== undefined ?\n readyState[convertedUrl.current] :\n url !== null && connect === true ?\n ReadyState.CONNECTING :\n ReadyState.UNINSTANTIATED;\n\n const stringifiedQueryParams = options.queryParams ? JSON.stringify(options.queryParams) : null;\n\n const sendMessage: SendMessage = useCallback((message, keep = true) => {\n if (isEventSourceSupported && webSocketRef.current instanceof EventSource) {\n console.warn('Unable to send a message from an eventSource');\n return;\n }\n \n if (webSocketRef.current?.readyState === ReadyState.OPEN) {\n assertIsWebSocket(webSocketRef.current, optionsCache.current.skipAssert);\n webSocketRef.current.send(message);\n } else if (keep) {\n messageQueue.current.push(message);\n }\n }, []);\n\n const sendJsonMessage: SendJsonMessage = useCallback((message, keep = true) => {\n sendMessage(JSON.stringify(message), keep);\n }, [sendMessage]);\n \n const getWebSocket = useCallback(() => {\n if (optionsCache.current.share !== true || (isEventSourceSupported && webSocketRef.current instanceof EventSource)) {\n return webSocketRef.current;\n }\n\n if (webSocketProxy.current === null && webSocketRef.current) {\n assertIsWebSocket(webSocketRef.current, optionsCache.current.skipAssert);\n webSocketProxy.current = websocketWrapper(webSocketRef.current, startRef);\n }\n\n return webSocketProxy.current;\n }, []);\n\n useEffect(() => {\n if (url !== null && connect === true) {\n let removeListeners: () => void;\n let expectClose = false;\n let createOrJoin = true;\n\n const start = async () => {\n convertedUrl.current = await getUrl(url, optionsCache);\n\n if (convertedUrl.current === null) {\n console.error('Failed to get a valid URL. WebSocket connection aborted.');\n convertedUrl.current = 'ABORTED';\n flushSync(() => setReadyState(prev => ({\n ...prev,\n ABORTED: ReadyState.CLOSED,\n })));\n\n return;\n }\n\n const protectedSetLastMessage = (message: WebSocketEventMap['message']) => {\n if (!expectClose) {\n flushSync(() => setLastMessage(message));\n }\n };\n \n const protectedSetReadyState = (state: ReadyState) => {\n if (!expectClose) {\n flushSync(() => setReadyState(prev => ({\n ...prev,\n ...(convertedUrl.current && {[convertedUrl.current]: state}),\n })));\n }\n };\n\n if(createOrJoin) {\n removeListeners = createOrJoinSocket(\n webSocketRef,\n convertedUrl.current,\n protectedSetReadyState,\n optionsCache,\n protectedSetLastMessage,\n startRef,\n reconnectCount,\n sendMessage,\n );\n }\n };\n\n startRef.current = () => {\n if (!expectClose) {\n if (webSocketProxy.current) webSocketProxy.current = null;\n removeListeners?.();\n start();\n }\n };\n \n start();\n return () => {\n expectClose = true;\n createOrJoin = false;\n if (webSocketProxy.current) webSocketProxy.current = null;\n removeListeners?.();\n setLastMessage(null);\n };\n } else if (url === null || connect === false) {\n reconnectCount.current = 0; // reset reconnection attempts\n setReadyState(prev => ({\n ...prev,\n ...(convertedUrl.current && {[convertedUrl.current]: ReadyState.CLOSED}),\n }));\n }\n }, [url, connect, stringifiedQueryParams, sendMessage]);\n\n useEffect(() => {\n if (readyStateFromUrl === ReadyState.OPEN) {\n messageQueue.current.splice(0).forEach(message => {\n sendMessage(message);\n });\n }\n }, [readyStateFromUrl]);\n\n return {\n sendMessage,\n sendJsonMessage,\n lastMessage,\n lastJsonMessage,\n readyState: readyStateFromUrl,\n getWebSocket,\n };\n};\n","import { WebSocketLike } from './types';\nimport { resetWebSockets } from './globals';\nimport { resetSubscribers } from './manage-subscribers';\n\nexport function assertIsWebSocket (\n webSocketInstance: WebSocketLike,\n skip?: boolean,\n): asserts webSocketInstance is WebSocket {\n if (!skip && webSocketInstance instanceof WebSocket === false) throw new Error('');\n};\n\n\nexport function resetGlobalState (url?: string): void {\n resetSubscribers(url);\n resetWebSockets(url);\n};\n"],"names":["Trace","dispatch","useAppDispatch","messages","useSelector","state","trace","traceStarted","statusCode","setStatusCode","useState","method","setMethod","func","setFunc","path","setPath","threshold","setThreshold","all","setAll","s3","setS3","internal","setInternal","storage","setStorage","os","setOS","errors","setErrors","toggleFilter","setToggleFilter","logActive","setLogActive","wsUrl","setWsUrl","useEffect","url","URL","window","location","toString","wsProt","wsProtocol","protocol","port","calls","c","push","join","baseLocation","document","baseURI","pathname","concat","hostname","searchParams","append","href","sendMessage","lastJsonMessage","readyState","useWebSocket","heartbeat","message","interval","timeout","ReadyState","CONNECTING","traceResetMessages","OPEN","setTraceStarted","CLOSED","ptime","DateTime","fromISO","time","toJSDate","key","Math","random","traceMessageReceived","setHelpName","_jsxs","Fragment","children","_jsx","PageHeaderWrapper","label","actions","HelpMenu","PageLayout","Box","withBorders","Grid","container","item","xs","sx","display","flexFlow","fontSize","fontWeight","padding","className","alignItems","justifyContent","border","breakPoints","md","gap","Checkbox","checked","id","name","onChange","value","disabled","TooltipWrapper","tooltip","Button","onClick","icon","FilterIcon","variant","style","width","background","useBackground","marginTop","marginBottom","InputBox","placeholder","e","target","gridTemplateColumns","flex","marginLeft","type","parseInt","DataTable","columns","elementKey","renderFunction","timeParse","Date","timeFromDate","fullElement","statusMsg","renderFullObject","host","client","niceBytes","isLoading","records","entityName","idField","customEmptyMessage","customPaperHeight","autoScrollToBottom","use_websocket_1","require","Object","enumerable","get","use_socket_io_1","constants_1","use_event_source_1","util_1","socket_io_1","heartbeat_1","exports","webSocketInstance","setters","optionsRef","reconnect","reconnectCount","cancelReconnectOnClose","cancelReconnectOnError","setLastMessage","setReadyState","current","fromSocketIO","setUpSocketIOPing","heartbeatCb","WebSocket","heartbeatOptions","undefined","onmessage","onMessage","filter","_a","returnMessage","data","bindMessageHandler","onopen","event","onOpen","bindOpenHandler","isEventSourceSupported","EventSource","assertIsWebSocket","skipAssert","onclose","onClose","shouldReconnect","reconnectAttempts","DEFAULT_RECONNECT_LIMIT","nextReconnectInterval","reconnectInterval","reconnectTimeout","setTimeout","DEFAULT_RECONNECT_INTERVAL_MS","onReconnectStop","console","warn","clearTimeout","bindCloseHandler","onerror","error","onError","__assign","code","reason","wasClean","close","retryOnError","bindErrorHandler","CLOSING","clearInterval","globals_1","manage_subscribers_1","onMessageCb","getSubscribers","forEach","subscriber","sharedWebSockets","withCredentials","events","EMPTY_EVENT_HANDLERS","navigator","product","isReactNative","globalThis","eventSourceSupported","attach_listener_1","attach_shared_listeners_1","webSocketRef","startRef","eventSourceOptions","Error","share","clearSocketIoPingInterval","protocols","attachSharedListeners","addSubscriber","removeSubscriber","hasSubscribers","socketLike","cleanSubscribers","attachListeners","retriedAttempts","convertedUrl","_d","sent","reconnectLimit","duration","Promise","resolve","getUrl","_c","_b","call","parsedUrl","parseSocketIOUrl","queryParams","appendQueryParams","hasOwnProperty","url_1","ws","options","DEFAULT_HEARTBEAT","messageAccepted","pingTimer","setInterval","send","timeoutTimer","addEventListener","subscribers","EMPTY_LIST","Array","from","size","Set","add","delete","webSocket","start","Proxy","obj","val","set","test","websocketWrapper","isSecure","removedFinalBackSlack","replace","SOCKET_IO_PATH","params","alreadyHasParams","stringified","entries","reduce","next","slice","SOCKET_IO_PING_INTERVAL","SOCKET_IO_PING_CODE","react_1","connect","DEFAULT_EVENT_SOURCE_OPTIONS","__rest","optionsWithEventSource","eventsRef","useRef","lastMessage","getWebSocket","handler","lastEvent","getEventSource","emptyEvent","payload","DEFAULT_OPTIONS","optionsWithSocketIO","useMemo","sendJsonMessage","socketIOLastMessage","match","JSON","parse","isArray","getSocketData","react_dom_1","create_or_join_1","get_url_1","proxy_1","__importDefault","UNPARSABLE_JSON_OBJECT","messageQueue","webSocketProxy","optionsCache","readyStateFromUrl","UNINSTANTIATED","stringifiedQueryParams","stringify","useCallback","keep","default","removeListeners_1","expectClose_1","createOrJoin_1","start_1","__awaiter","flushSync","prev","ABORTED","protectedSetLastMessage","protectedSetReadyState","createOrJoinSocket","splice","skip","resetSubscribers","resetWebSockets"],"sourceRoot":""} \ No newline at end of file diff --git a/web-app/build/static/js/main.bc79b8d1.js b/web-app/build/static/js/main.bc79b8d1.js new file mode 100644 index 0000000000..909b5a79ae --- /dev/null +++ b/web-app/build/static/js/main.bc79b8d1.js @@ -0,0 +1,3 @@ +/*! For license information please see main.bc79b8d1.js.LICENSE.txt */ +(()=>{var e={85330:(e,t,n)=>{"use strict";n.d(t,{BT:()=>s,M0:()=>r,SW:()=>i,Wj:()=>o,cM:()=>c,jI:()=>d,jz:()=>a,wg:()=>l});let r=function(e){return e.SseS3="sse-s3",e.SseKms="sse-kms",e}({}),a=function(e){return e.PRIVATE="PRIVATE",e.PUBLIC="PUBLIC",e.CUSTOM="CUSTOM",e}({}),o=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:a,query:o,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=o&&this.toQueryString(o),m=this.contentFormatters[a||c.Json],f=i||p.format;return this.customFetch("".concat(s||this.baseUrl||"").concat(r).concat(h?"?".concat(h):""),{...p,headers:{...p.headers||{},...a&&a!==c.FormData?{"Content-Type":a}:{}},signal:(l?this.createAbortSignal(l):p.signal)||null,body:"undefined"===typeof t||null===t?null:m(t)}).then((async e=>{const t=e;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(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(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(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(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(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(t,"/objects"),method:"DELETE",query:n,secure:!0,...r})},deleteMultipleObjects:function(t,n,r){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request({path:"/buckets/".concat(t,"/delete-objects"),method:"POST",query:r,body:n,secure:!0,type:c.Json,...a})},objectsUploadCreate:function(t,n,r){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request({path:"/buckets/".concat(t,"/objects/upload"),method:"POST",query:n,body:r,secure:!0,type:c.FormData,...a})},downloadMultipleObjects:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/buckets/".concat(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(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(t,"/objects/share"),method:"GET",query:n,secure:!0,format:"json",...r})},putObjectLegalHold:function(t,n,r){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request({path:"/buckets/".concat(t,"/objects/legalhold"),method:"PUT",query:n,body:r,secure:!0,type:c.Json,...a})},putObjectRetention:function(t,n,r){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request({path:"/buckets/".concat(t,"/objects/retention"),method:"PUT",query:n,body:r,secure:!0,type:c.Json,...a})},deleteObjectRetention:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/buckets/".concat(t,"/objects/retention"),method:"DELETE",query:n,secure:!0,...r})},putObjectTags:function(t,n,r){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request({path:"/buckets/".concat(t,"/objects/tags"),method:"PUT",query:n,body:r,secure:!0,type:c.Json,...a})},putObjectRestore:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/buckets/".concat(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(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(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(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(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(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(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(t,"/events"),method:"POST",body:n,secure:!0,type:c.Json,...r})},deleteBucketEvent:function(t,n,r){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request({path:"/buckets/".concat(t,"/events/").concat(n),method:"DELETE",body:r,secure:!0,type:c.Json,...a})},getBucketReplication:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/buckets/".concat(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(t,"/replication/").concat(n),method:"GET",secure:!0,format:"json",...r})},updateMultiBucketReplication:function(t,n,r){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request({path:"/buckets/".concat(t,"/replication/").concat(n),method:"PUT",body:r,secure:!0,type:c.Json,...a})},deleteBucketReplicationRule:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/buckets/".concat(t,"/replication/").concat(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(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(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(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(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(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(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(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(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(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(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 a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request({path:"/buckets/".concat(t,"/lifecycle/").concat(n),method:"PUT",body:r,secure:!0,type:c.Json,...a})},deleteBucketLifecycleRule:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/buckets/".concat(t,"/lifecycle/").concat(n),method:"DELETE",secure:!0,...r})},getBucketRewind:function(t,n,r){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request({path:"/buckets/".concat(t,"/rewind/").concat(n),method:"GET",query:r,secure:!0,format:"json",...a})},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(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(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(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(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(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(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(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(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(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(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(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(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(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(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(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(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(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(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(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(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(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(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(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(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(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(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(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})},getTier:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/admin/tiers/".concat(t,"/").concat(n),method:"GET",secure:!0,format:"json",...r})},editTierCredentials:function(t,n,r){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request({path:"/admin/tiers/".concat(t,"/").concat(n,"/credentials"),method:"PUT",body:r,secure:!0,type:c.Json,...a})},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(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(t,"/").concat(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(t),method:"GET",secure:!0,format:"json",...n})},kmsDeleteKey:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/kms/keys/".concat(t),method:"DELETE",secure:!0,...n})},kmsImportKey:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/kms/keys/".concat(t,"/import"),method:"POST",body:n,secure:!0,type:c.Json,...r})},kmsSetPolicy:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/kms/policies",method:"POST",body:t,secure:!0,type:c.Json,...n})},kmsListPolicies:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/kms/policies",method:"GET",query:t,secure:!0,format:"json",...n})},kmsGetPolicy:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/kms/policies/".concat(t),method:"GET",secure:!0,format:"json",...n})},kmsDeletePolicy:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/kms/policies/".concat(t),method:"DELETE",secure:!0,...n})},kmsAssignPolicy:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/kms/policies/".concat(t,"/assign"),method:"POST",body:n,secure:!0,type:c.Json,...r})},kmsDescribePolicy:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/kms/policies/".concat(t,"/describe"),method:"GET",secure:!0,format:"json",...n})},kmsDeleteIdentity:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/kms/identities/".concat(t),method:"DELETE",secure:!0,...n})},kmsDescribeIdentity:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/kms/identities/".concat(t,"/describe"),method:"GET",secure:!0,format:"json",...n})},kmsDescribeSelfIdentity:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request({path:"/kms/describe-self/identity",method:"GET",secure:!0,format:"json",...t})},kmsListIdentities:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/kms/identities",method:"GET",query:t,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(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(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(n,"/").concat(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(n,"/").concat(t),method:"DELETE",secure:!0,format:"json",...r})},updateConfiguration:function(t,n,r){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request({path:"/idp/".concat(n,"/").concat(t),method:"PUT",body:r,secure:!0,type:c.Json,format:"json",...a})}},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(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 a=r.request;r.request=async e=>{let{body:t,secure:n,path:r,type:o,query:i,format:s,baseUrl:l,cancelToken:c,...u}=e;return a({body:t,secure:n,path:r,type:o,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:()=>o});n(65043);var r=n(89923),a=n(70579);const o=()=>(0,a.jsx)(r.xA9,{container:!0,sx:{height:"100vh",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center"},children:(0,a.jsx)(r.xA9,{item:!0,xs:3,sx:{display:"flex",justifyContent:"center",alignItems:"center"},children:(0,a.jsx)(r.aHM,{style:{width:35,height:35}})})})},18218:(e,t,n)=>{"use strict";n.d(t,{A:()=>l});var r=n(20554),a=n(33097),o=n.n(a),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),a=e.includes(i.OV.ADMIN_ALL_ACTIONS),o=t.filter((function(t){return-1!==e.indexOf(t)||-1!==t.indexOf("s3:")&&r||-1!==t.indexOf("admin:")&&a}));return n?o.length===t.length:o.length>0},l=(e,t,n,a)=>{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=o()(l,e,[]);r=[...r,...t]}}));let i=o()(l,e,[]);i=i||[];const s=o()(l,"arn:aws:s3:::".concat(e,"/*"),[]),c=o()(l,"arn:aws:s3:::".concat(e,"/"),[]),u=o()(l,"arn:aws:s3:::".concat(e),[]);if(d=[...i,...s,...r,...c,...u],a){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),a=n(65043),o=n(70579);const i=e=>{let{children:t,RenderError:n=(()=>(0,o.jsx)(o.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,o.jsx)(o.Fragment,{children:t.map((e=>(0,a.cloneElement)(e,{...i})))}):(0,a.cloneElement)(t,{...i}):(0,o.jsx)(o.Fragment,{children:t}):(0,o.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:()=>a,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:()=>o});const r={BUCKET_OWNER:"BUCKET_OWNER",BUCKET_VIEWER:"BUCKET_VIEWER",BUCKET_ADMIN:"BUCKET_ADMIN",BUCKET_LIFECYCLE:"BUCKET_LIFECYCLE"},a={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"},o={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]:[a.S3_PUT_OBJECT,a.S3_PUT_ACTIONS,a.S3_DELETE_OBJECT],[r.BUCKET_VIEWER]:[a.S3_LIST_BUCKET,a.S3_ALL_LIST_BUCKET],[r.BUCKET_ADMIN]:[a.S3_ALL_ACTIONS,a.ADMIN_ALL_ACTIONS,a.S3_REPLICATE_OBJECT,a.S3_REPLICATE_DELETE,a.S3_REPLICATE_TAGS,a.S3_GET_OBJECT_VERSION_FOR_REPLICATION,a.S3_PUT_REPLICATION_CONFIGURATION,a.S3_GET_REPLICATION_CONFIGURATION,a.S3_GET_BUCKET_VERSIONING,a.S3_PUT_BUCKET_VERSIONING,a.S3_GET_BUCKET_ENCRYPTION_CONFIGURATION,a.S3_PUT_BUCKET_ENCRYPTION_CONFIGURATION,a.S3_DELETE_OBJECT_TAGGING,a.S3_PUT_OBJECT_TAGGING,a.S3_GET_OBJECT_TAGGING,a.S3_PUT_OBJECT_VERSION_TAGGING,a.S3_DELETE_OBJECT_VERSION_TAGGING,a.S3_DELETE_OBJECT_VERSION,a.S3_GET_OBJECT_VERSION_TAGGING,a.S3_GET_OBJECT_VERSION,a.S3_PUT_BUCKET_TAGGING,a.S3_GET_BUCKET_TAGGING,a.S3_PUT_BUCKET_OBJECT_LOCK_CONFIGURATION,a.S3_GET_BUCKET_OBJECT_LOCK_CONFIGURATION,a.S3_PUT_OBJECT_LEGAL_HOLD,a.S3_GET_OBJECT_LEGAL_HOLD,a.S3_GET_OBJECT_RETENTION,a.S3_PUT_OBJECT_RETENTION,a.S3_BYPASS_GOVERNANCE_RETENTION,a.S3_PUT_BUCKET_POLICY,a.S3_PUT_BUCKET_NOTIFICATIONS,a.S3_GET_LIFECYCLE_CONFIGURATION,a.S3_PUT_LIFECYCLE_CONFIGURATION,a.S3_LIST_MULTIPART_UPLOAD_PARTS,a.S3_LISTEN_BUCKET_NOTIFICATIONS,a.S3_LISTEN_NOTIFICATIONS,a.S3_LIST_BUCKET_MULTIPART_UPLOADS,a.S3_LIST_BUCKET_VERSIONS,a.S3_GET_BUCKET_POLICY_STATUS,a.S3_LIST_ALL_MY_BUCKETS,a.S3_HEAD_BUCKET,a.S3_GET_BUCKET_POLICY,a.S3_GET_BUCKET_NOTIFICATIONS,a.S3_GET_BUCKET_LOCATION,a.S3_DELETE_BUCKET_POLICY,a.S3_FORCE_DELETE_BUCKET,a.S3_DELETE_BUCKET,a.S3_CREATE_BUCKET,a.S3_ABORT_MULTIPART_UPLOAD,a.ADMIN_GET_POLICY,a.ADMIN_LIST_USER_POLICIES,a.ADMIN_LIST_USERS,a.ADMIN_HEAL,a.S3_GET_ACTIONS,a.S3_PUT_ACTIONS],[r.BUCKET_LIFECYCLE]:[a.S3_GET_LIFECYCLE_CONFIGURATION,a.S3_PUT_LIFECYCLE_CONFIGURATION,a.S3_GET_ACTIONS,a.S3_PUT_ACTIONS,a.ADMIN_LIST_TIERS,a.ADMIN_SET_TIER]},s={[o.ADD_BUCKETS]:[a.S3_CREATE_BUCKET],[o.BUCKETS_EDIT_REPLICATION]:[...i[r.BUCKET_ADMIN]],[o.BUCKETS_ADD_REPLICATION]:[...i[r.BUCKET_ADMIN]],[o.BUCKETS_ADMIN_VIEW]:[...i[r.BUCKET_ADMIN]],[o.OBJECT_BROWSER_VIEW]:[...i[r.BUCKET_OWNER],...i[r.BUCKET_VIEWER]],[o.GROUPS]:[a.ADMIN_LIST_GROUPS,a.ADMIN_ADD_USER_TO_GROUP],[o.GROUPS_VIEW]:[a.ADMIN_GET_GROUP,a.ADMIN_DISABLE_GROUP,a.ADMIN_ENABLE_GROUP,a.ADMIN_REMOVE_USER_FROM_GROUP,a.ADMIN_LIST_USER_POLICIES,a.ADMIN_ADD_USER_TO_GROUP,a.ADMIN_ATTACH_USER_OR_GROUP_POLICY],[o.GROUPS_ADD]:[a.ADMIN_LIST_USERS,a.ADMIN_CREATE_USER],[o.USERS]:[a.ADMIN_LIST_USERS,a.ADMIN_CREATE_USER],[o.USERS_VIEW]:[a.ADMIN_GET_USER,a.ADMIN_ADD_USER_TO_GROUP,a.ADMIN_ENABLE_USER,a.ADMIN_DISABLE_USER,a.ADMIN_DELETE_USER],[o.USER_SA_ACCOUNT_ADD]:[a.ADMIN_CREATE_SERVICEACCOUNT,a.ADMIN_UPDATE_SERVICEACCOUNT,a.ADMIN_REMOVE_SERVICEACCOUNT,a.ADMIN_LIST_SERVICEACCOUNTS],[o.USER_ADD]:[a.ADMIN_CREATE_USER],[o.ACCOUNT_ADD]:[a.ADMIN_CREATE_SERVICEACCOUNT],[o.DASHBOARD]:[a.ADMIN_SERVER_INFO],[o.POLICIES_VIEW]:[a.ADMIN_DELETE_POLICY,a.ADMIN_LIST_GROUPS,a.ADMIN_GET_GROUP,a.ADMIN_GET_POLICY,a.ADMIN_CREATE_POLICY],[o.POLICIES]:[a.ADMIN_LIST_USER_POLICIES,a.ADMIN_CREATE_POLICY],[o.POLICY_ADD]:[a.ADMIN_CREATE_POLICY],[o.SETTINGS]:[a.ADMIN_CONFIG_UPDATE],[o.SETTINGS_VIEW]:[a.ADMIN_CONFIG_UPDATE],[o.EVENT_DESTINATIONS_ADD_SERVICE]:[a.ADMIN_SERVER_INFO,a.ADMIN_CONFIG_UPDATE],[o.EVENT_DESTINATIONS_ADD]:[a.ADMIN_SERVER_INFO,a.ADMIN_CONFIG_UPDATE],[o.EVENT_DESTINATIONS]:[a.ADMIN_SERVER_INFO,a.ADMIN_CONFIG_UPDATE],[o.TIERS]:[a.ADMIN_LIST_TIERS],[o.TIERS_ADD]:[a.ADMIN_SET_TIER,a.ADMIN_LIST_TIERS],[o.TIERS_ADD_SERVICE]:[a.ADMIN_SET_TIER,a.ADMIN_LIST_TIERS],[o.TOOLS]:[a.S3_LISTEN_NOTIFICATIONS,a.S3_LISTEN_BUCKET_NOTIFICATIONS,a.ADMIN_GET_CONSOLE_LOG,a.ADMIN_SERVER_TRACE,a.ADMIN_HEAL,a.ADMIN_HEALTH_INFO,a.ADMIN_SERVER_INFO],[o.TOOLS_LOGS]:[a.ADMIN_GET_CONSOLE_LOG],[o.TOOLS_AUDITLOGS]:[a.ADMIN_HEALTH_INFO],[o.TOOLS_WATCH]:[a.S3_LISTEN_NOTIFICATIONS,a.S3_LISTEN_BUCKET_NOTIFICATIONS],[o.TOOLS_TRACE]:[a.ADMIN_SERVER_TRACE],[o.TOOLS_DIAGNOSTICS]:[a.ADMIN_HEALTH_INFO,a.ADMIN_SERVER_INFO],[o.TOOLS_SPEEDTEST]:[a.ADMIN_HEALTH_INFO],[o.REGISTER_SUPPORT]:[a.ADMIN_SERVER_INFO,a.ADMIN_CONFIG_UPDATE],[o.CALL_HOME]:[a.ADMIN_HEALTH_INFO],[o.PROFILE]:[a.ADMIN_HEALTH_INFO],[o.SUPPORT_INSPECT]:[a.ADMIN_HEALTH_INFO],[o.LICENSE]:[a.ADMIN_SERVER_INFO,a.ADMIN_CONFIG_UPDATE],[o.SITE_REPLICATION]:[a.ADMIN_SERVER_INFO,a.ADMIN_CONFIG_UPDATE],[o.SITE_REPLICATION_STATUS]:[a.ADMIN_SERVER_INFO,a.ADMIN_CONFIG_UPDATE],[o.SITE_REPLICATION_ADD]:[a.ADMIN_SERVER_INFO,a.ADMIN_CONFIG_UPDATE],[o.KMS]:[a.KMS_ALL_ACTIONS],[o.KMS_STATUS]:[a.KMS_ALL_ACTIONS,a.KMS_STATUS],[o.KMS_KEYS]:[a.KMS_ALL_ACTIONS,a.KMS_CREATE_KEY,a.KMS_DELETE_KEY,a.KMS_LIST_KEYS,a.KMS_IMPORT_KEY,a.KMS_KEY_STATUS],[o.KMS_KEYS_ADD]:[a.KMS_LIST_KEYS,a.KMS_CREATE_KEY],[o.KMS_KEYS_IMPORT]:[a.KMS_LIST_KEYS,a.KMS_IMPORT_KEY],[o.IDP_LDAP_CONFIGURATIONS]:[a.ADMIN_ALL_ACTIONS,a.ADMIN_CONFIG_UPDATE],[o.IDP_OPENID_CONFIGURATIONS]:[a.ADMIN_ALL_ACTIONS,a.ADMIN_CONFIG_UPDATE],[o.IDP_OPENID_CONFIGURATIONS_ADD]:[a.ADMIN_ALL_ACTIONS,a.ADMIN_CONFIG_UPDATE],[o.IDP_OPENID_CONFIGURATIONS_VIEW]:[a.ADMIN_ALL_ACTIONS,a.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=[a.ADMIN_LIST_USERS],p=[a.ADMIN_ADD_USER_TO_GROUP],h=[a.ADMIN_DELETE_USER],m=[a.ADMIN_ENABLE_USER],f=[a.ADMIN_DISABLE_USER],g=[a.ADMIN_LIST_USER_POLICIES,a.ADMIN_LIST_USERS,a.ADMIN_ADD_USER_TO_GROUP,a.ADMIN_REMOVE_USER_FROM_GROUP,a.ADMIN_ATTACH_USER_OR_GROUP_POLICY,a.ADMIN_LIST_USERS,a.ADMIN_DELETE_USER,a.ADMIN_ENABLE_USER,a.ADMIN_DISABLE_USER,a.ADMIN_GET_USER,a.ADMIN_LIST_USER_POLICIES],b=[a.ADMIN_ATTACH_USER_OR_GROUP_POLICY,a.ADMIN_LIST_USER_POLICIES,a.ADMIN_GET_POLICY],y=[a.ADMIN_ADD_USER_TO_GROUP,a.ADMIN_REMOVE_USER_FROM_GROUP,a.ADMIN_LIST_GROUPS,a.ADMIN_ENABLE_USER],v=[a.ADMIN_GET_GROUP],E=[a.ADMIN_ENABLE_USER,a.ADMIN_DISABLE_USER],w=[a.ADMIN_LIST_SERVICEACCOUNTS,a.ADMIN_UPDATE_SERVICEACCOUNT,a.ADMIN_REMOVE_SERVICEACCOUNT],S=[a.ADMIN_ATTACH_USER_OR_GROUP_POLICY,a.ADMIN_LIST_USER_POLICIES],A=[a.ADMIN_REMOVE_USER_FROM_GROUP],_=[a.ADMIN_LIST_GROUPS],T=[a.ADMIN_ADD_USER_TO_GROUP,a.ADMIN_LIST_USERS],C=[a.ADMIN_GET_USER,a.ADMIN_LIST_USERS],x=[a.ADMIN_ADD_USER_TO_GROUP,a.ADMIN_LIST_USERS],I=[a.ADMIN_ATTACH_USER_OR_GROUP_POLICY,a.ADMIN_LIST_USER_POLICIES],O=[a.ADMIN_GET_POLICY],k=[a.ADMIN_ENABLE_GROUP,a.ADMIN_DISABLE_GROUP],N=[a.ADMIN_CREATE_POLICY],R=[a.ADMIN_DELETE_POLICY],M=[a.ADMIN_LIST_USER_POLICIES],L=[a.ADMIN_LIST_GROUPS,a.ADMIN_GET_GROUP],D=[a.S3_DELETE_BUCKET,a.S3_FORCE_DELETE_BUCKET],P=[a.S3_LIST_BUCKET,a.S3_ALL_LIST_BUCKET]},20649:(e,t,n)=>{"use strict";n.d(t,{A:()=>c});var r=n(56797),a=n.n(r),o=n(33097),i=n.n(o),s=n(56483),l=n(64710);const c=new class{invoke(e,t,n,r){let o=t;"/"===o[0]&&(o=o.slice(1));let i=a()(e,o);if(r)for(let a in r)i.set(a,r[a]);return i.send(n).then((e=>e.body)).catch((e=>401===e.status&&localStorage.getItem("userLoggedIn")&&!o.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:()=>M,Af:()=>T,GT:()=>S,K7:()=>b,MD:()=>i,OT:()=>O,Tw:()=>D,UM:()=>k,Wi:()=>A,Yj:()=>d,cj:()=>h,dq:()=>C,eQ:()=>v,h4:()=>_,hr:()=>y,l9:()=>m,nO:()=>c,nf:()=>x,oK:()=>R,q5:()=>f,q7:()=>p,qO:()=>u,qf:()=>L,x6:()=>I,yz:()=>w,zv:()=>N});var r=n(19816),a=n(33097),o=n.n(a);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),a=(n?l:i).findIndex((e=>e===t));if(-1===a)return 0;return r*Math.pow(1024,a)},b=e=>{const t=Math.floor(e/86400),n=Math.floor(e%86400/3600),r=Math.floor(e%3600/60),a=e%60,o=[];return t>0&&o.push("".concat(t," day").concat(1!==t?"s":"")),n>0&&o.push("".concat(n," hour").concat(1!==n?"s":"")),r>0&&o.push("".concat(r," minute").concat(1!==r?"s":"")),a>0&&o.push("".concat(a," second").concat(1!==a?"s":"")),o.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 a=new Date(1e3*r);return t?n?"".concat(E(a.getMonth()+1),"/").concat(E(a.getDate())," ").concat(E(a.getHours()),":").concat(E(a.getMinutes())):a.toLocaleString():"".concat(a.getHours(),":").concat(String(a.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],a=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 o=Math.floor(Math.log(t)/Math.log(1024)),s=n?1:0,c=t/Math.pow(1024,o),u=r?Math.floor(c):c;return{total:parseFloat(u.toFixed(s)),unit:a?l[o]:i[o]}},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=>{if(!e)return"";try{return(e=>{const t=Array.from(e,(e=>String.fromCodePoint(e))).join("");return btoa(t)})((new TextEncoder).encode(e))}catch(t){return""}},I=e=>{try{return(new TextDecoder).decode((e=>{const t=atob(e);return Uint8Array.from(t,(e=>e.codePointAt(0)))})(e))}catch(t){return e}},O=(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)},k=e=>{var t;return(null===(t=document.cookie.match("(^|;)\\s*"+e+"\\s*=\\s*([^;]+)"))||void 0===t?void 0:t.pop())||""},N=(e,t)=>{const n=100*e/t;return n>=90?"#C83B51":n>=70?"#FFAB0F":"#07193E"},R=()=>{const e=o()(window.navigator,"platform","undefined");return e||"undefined"},M=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>"),D=e=>{try{return decodeURIComponent(e)}catch(t){return e}}},14558:(e,t,n)=>{"use strict";var r;n.d(t,{vP:()=>o,vf:()=>i});const a=(null===(r=document.head.querySelector("[name~=minio-license][content]"))||void 0===r?void 0:r.content)||"AGPL",o=()=>{let e="AGPL";switch(a.toLowerCase()){case"enterprise":e="enterprise";break;case"standard":e="standard";break;default:e="AGPL"}return e},i=()=>{const e=o();return"standard"===e||"enterprise"===e}},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:()=>c,Nx:()=>s,ZU:()=>i,fT:()=>l});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}}}),{setBucketDetailsTab:a,setBucketInfo:o,setBucketDetailsLoad:i}=r.actions,s=e=>e.bucketDetails.loadingBucket,l=e=>e.bucketDetails.bucketInfo,c=r.reducer},43596:(e,t,n)=>{"use strict";n.d(t,{_:()=>i});var r=n(56483),a=n(80907),o=n(56629);const i=(0,a.zD)("buckets/addBucketAsync",(async(e,t)=>{let{getState:n,rejectWithValue:a,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 o.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),a=n(43596),o=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:o.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=o.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=o.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(a._.pending,(e=>{e.loading=!0})).addCase(a._.rejected,(e=>{e.loading=!1})).addCase(a._.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:()=>p,Fj:()=>d,W3:()=>g,IZ:()=>m,$w:()=>f});var r,a=n(56483),o=n(37414),i=n(20554),s=n(85330),l=n(56629),c=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 u=(e,t)=>{const n=document.createElement("a");n.href=e,n.download=t,document.body.appendChild(n),n.click(),document.body.removeChild(n)},d=async(e,t,n)=>{const r=i.Ay.getState().system.anonymousMode;try{const a=await l.F.buckets.downloadMultipleObjects(e,t,{type:s.cM.Json,headers:r?{"X-Anonymous":"1"}:void 0}),o=await a.blob(),i=window.URL.createObjectURL(o);u(i,n)}catch(a){i.Ay.dispatch((0,c.C9)({errorMessage:"Download of multiple files failed. ".concat(a.statusText),detailedError:""}))}},p=function(e,t,n,s){let l=arguments.length>4&&void 0!==arguments[4]?arguments[4]:null,c=arguments.length>5?arguments[5]:void 0,d=arguments.length>6?arguments[6]:void 0,p=arguments.length>7?arguments[7]:void 0,m=arguments.length>8?arguments[8]:void 0,f=arguments.length>9?arguments[9]:void 0,g=arguments.length>10?arguments[10]:void 0,b=document.baseURI.replace(window.location.origin,"");const y=i.Ay.getState().system.anonymousMode;let v="".concat(window.location.origin).concat(b,"api/v1/buckets/").concat(e,"/objects/download?prefix=").concat(t).concat(null!==l&&""!==l.trim()?"&override_file_name=".concat((0,a.nf)(l||"")):"");if(n&&(v=v.concat("&version_id=".concat(n))),s>53687091200)return new h(v,c,p,g);let E=new XMLHttpRequest;return E.open("GET",v,!0),y&&E.setRequestHeader("X-Anonymous","1"),E.addEventListener("progress",(function(e){let t=Math.round(e.loaded/s*100);d&&d(t)}),!1),E.responseType="blob",E.onreadystatechange=()=>{if(E.readyState===XMLHttpRequest.DONE){let e=(e=>(0,a.x6)(e).endsWith("/"))(t)||E.response.size===s;if(E.status===r.OK&&e){const e=E.getResponseHeader("Content-Disposition");let t="download";if(e){t=decodeURIComponent(e).split('"')[1]}p&&p(),(0,o.vy)(c),u(window.URL.createObjectURL(E.response),t)}else{if("application/json"===E.getResponseHeader("Content-Type")){const e=JSON.parse(E.response);if(e.detailedMessage)return void m(e.detailedMessage)}m("Unexpected response, download incomplete.")}}},E.onerror=()=>{m&&m("A network error occurred.")},E.onabort=()=>{f&&f()},E};class h{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 m=(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||""),a=(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 o=r;return r===a?o=r:"none"===r&&"none"!==a?o=a:"none"===a&&"none"!==r&&(o=r),o},f=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)}},g=(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 a=[];const o=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&&((!o[t]||o[t]===e)&&(o[t]||a.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!==o[t]?(a.push({name:"".concat(r.join("/")).concat(r.length>0?"/":"").concat(e,"/"),size:0,last_modified:"",version_id:""}),!1):(""!==e&&r.push(e),!0))))}})))})),a.length>0){let e=[],t=[];a.forEach((n=>{t.includes(n.name)||(e.push(n),t.push(n.name))})),a=e}return a}},69772:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});n(65043);var r=n(89923),a=n(22166),o=n(70579);const i=e=>{let{marginRight:t,marginTop:i}=e,s=n(23498);const l=(0,a.d4)((e=>e.system.overrideStyles)),c=s((null===l||void 0===l?void 0:l.backgroundColor)||"#fff").getBrightness()<=128;return(0,o.jsx)(r.xA9,{sx:{"& svg":{width:105,marginRight:t,marginTop:i,fill:c?"#fff":"#081C42"}},children:(0,o.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),a=n(33097),o=n.n(a);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(o()(e,"borderColor","#eaeaea")," 1px solid"),borderRadius:2,backgroundColor:o()(e,"bgColor","#fff"),padding:16},"& .titleContainer":{color:o()(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:o()(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:()=>o});var r=n(65043),a=n(20649);const o=(e,t)=>{const[n,o]=(0,r.useState)(!1);return[n,(n,r,i,s)=>{o(!0),a.A.invoke(n,r,i,s).then((t=>{o(!1),e(t)})).catch((e=>{o(!1),t(e)}))}]}},49555:(e,t,n)=>{"use strict";n.d(t,{A:()=>d});var r=n(65043),a=n(89923),o=n(22166),i=n(33097),s=n.n(i),l=n(20554),c=n(64159),u=n(70579);const d=e=>{let{isModal:t=!1}=e;const n=(0,l.jL)(),i=(0,o.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)(a.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:()=>o});n(65043);var r=n(89923),a=n(70579);const o=e=>{let{isOpen:t=!1,onClose:n,onCancel:o,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,a.jsxs)(r.ngX,{title:s,titleIcon:m,onClose:n,open:t,customMaxWidth:510,children:[(0,a.jsx)(r.azJ,{children:c}),(0,a.jsxs)(r.azJ,{sx:{display:"flex",justifyContent:"flex-end",gap:10,marginTop:20},children:[(0,a.jsx)(r.$nd,{onClick:o||n,disabled:l,type:"button",...h,variant:"regular",id:"confirm-cancel",label:u}),(0,a.jsx)(r.$nd,{id:"confirm-ok",onClick:i,label:d,disabled:l,variant:"secondary",...p})]})]})}},94141:(e,t,n)=>{"use strict";n.d(t,{A:()=>u});var r=n(65043),a=n(22166),o=n(89923),i=n(20554),s=n(64159),l=n(49555),c=n(70579);const u=e=>{let{onClose:t,modalOpen:n,title:u,children:d,wideLimit:p=!0,titleIcon:h=null,iconColor:m="default",sx:f}=e;const g=(0,i.jL)(),[b,y]=(0,r.useState)(!1),v=(0,a.d4)((e=>e.system.modalSnackBar));(0,r.useEffect)((()=>{g((0,s.h0)(""))}),[g]),(0,r.useEffect)((()=>{if(v){if(""===v.message)return void y(!1);"error"!==v.type&&y(!0)}}),[v]);let E="";return v&&(E=v.detailedErrorMsg,(""===E||E&&E.length<5)&&(E=v.message)),(0,c.jsxs)(o.ngX,{onClose:t,open:n,title:u,titleIcon:h,widthLimit:p,sx:f,iconColor:m,children:[(0,c.jsx)(l.A,{isModal:!0}),(0,c.jsx)(o.qb_,{onClose:()=>{y(!1),g((0,s.h0)(""))},open:b,message:E,mode:"inline",variant:"error"===v.type?"error":"default",autoHideDuration:"error"===v.type?10:5,condensed:!0}),d]})}},96826:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>v});var r=n(65043),a=n(22166),o=n(20554),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 a="".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:a,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:a})]})}),(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,o.jL)(),t=(0,a.d4)((e=>e.objectBrowser.objectManager.objectsToManage)),n=(0,a.d4)((e=>e.objectBrowser.objectManager.managerOpen)),s=(0,a.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),a=n(94574),o=n(33097),i=n.n(o),s=n(89923),l=n(22166),c=n(6035),u=n(20554),d=n(70579);const p=a.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)),a=(0,l.d4)((e=>e.objectBrowser.objectManager.managerOpen)),[o,i]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{t.length>0&&!a&&(i(!0),setTimeout((()=>{i(!1)}),300))}),[t.length,a]),(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:o?"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),a=n(89923),o=n(59707),i=n(6681),s=n(22166),l=n(20554),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)(a.$nd,{id:"dark-mode-activator",icon:t?(0,d.jsx)(a.LPG,{}):(0,d.jsx)(a.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)(a.zYs,{label:t,actions:(0,d.jsxs)(r.Fragment,{children:[n,(0,d.jsx)(p,{}),(0,d.jsx)(o.A,{})]}),middleComponent:i})}},18575:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});n(65043);var r=n(89923),a=n(70579);function o(e){let t="";return e.error?t="Error: ".concat(e.notificationLabel||""):e.cancelled&&(t="Cancelled"),(0,a.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,a.jsx)(o,{...h,error:!!u,cancelled:!!d}):"small"===c?(0,a.jsx)(r.z21,{...h,sx:{height:6,borderRadius:6}}):(0,a.jsx)(r.z21,{...h})}},64681:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});n(65043);var r=n(89923),a=n(70579);const o=e=>{let{placeholder:t="",onChange:n,overrideClass:o,value:i,id:s="search-resource",label:l="",sx:c}=e;return(0,a.jsx)(r.cl_,{placeholder:t,className:o||"",id:s,label:l,onChange:e=>{n(e.target.value)},value:i,startIcon:(0,a.jsx)(r.WIv,{}),sx:c})}},6681:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var r=n(65043),a=n(89923),o=n(70579);const i=e=>{let{tooltip:t,children:n,errorProps:i=null,placement:s}=e;return(0,o.jsx)(a.m_M,{tooltip:t,placement:s,children:(0,o.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),a=n(58168),o=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(a)}))};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"),a=r.style;return a.width="100px",a.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,o.A)(r)),r._outerRef=void 0,r._resetIsScrollingTimeoutId=null,r.state={instance:(0,o.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,a){return r.props.onItemsRendered({overscanStartIndex:e,overscanStopIndex:t,visibleStartIndex:n,visibleStopIndex:a})})),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,a=r.props,o=a.direction,i=a.itemSize,s=a.layout,c=r._getItemStyleCache(E&&i,E&&s,E&&o);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"===o||"horizontal"===s,h="rtl"===o,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,a=t.scrollLeft,o=t.scrollWidth;r.setState((function(e){if(e.scrollOffset===a)return null;var t=r.props.direction,i=a;if("rtl"===t)switch(g()){case"negative":i=-a;break;case"positive-descending":i=o-n-a}return i=Math.max(0,Math.min(i,o-n)),{isScrolling:!0,scrollDirection:e.scrollOffsets.clientWidth?m():0:s.scrollHeight>s.clientHeight?m():0}this.scrollTo(u(this.props,e,t,o,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 a=this._outerRef;"horizontal"===t||"horizontal"===r?a.scrollLeft=n:a.scrollTop=n}this._callPropsCallbacks()},S.componentDidUpdate=function(){var e=this.props,t=e.direction,n=e.layout,r=this.state,a=r.scrollOffset;if(r.scrollUpdateWasRequested&&null!=this._outerRef){var o=this._outerRef;if("horizontal"===t||"horizontal"===n)if("rtl"===t)switch(g()){case"negative":o.scrollLeft=-a;break;case"positive-ascending":o.scrollLeft=a;break;default:var i=o.clientWidth,s=o.scrollWidth;o.scrollLeft=s-i-a}else o.scrollLeft=a;else o.scrollTop=a}this._callPropsCallbacks()},S.componentWillUnmount=function(){null!==this._resetIsScrollingTimeoutId&&d(this._resetIsScrollingTimeoutId)},S.render=function(){var e=this.props,t=e.children,n=e.className,o=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"===o||"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,a.A)({position:"relative",height:i,width:w,overflow:"auto",WebkitOverflowScrolling:"touch",willChange:"transform",direction:o},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],a=e[3];this._callOnItemsRendered(t,n,r,a)}if("function"===typeof this.props.onScroll){var o=this.state,i=o.scrollDirection,s=o.scrollOffset,l=o.scrollUpdateWasRequested;this._callOnScroll(i,s,l)}},S._getRangeToRender=function(){var e=this.props,t=e.itemCount,n=e.overscanCount,r=this.state,a=r.isScrolling,o=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=a&&"backward"!==o?1:Math.max(1,n),u=a&&"forward"!==o?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,a,o){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+o);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,a=n.itemCount,o=n.minimumBatchSize,i=void 0===o?10:o,s=n.threshold,l=void 0===s?15:s,c=function(e){for(var t=e.isItemLoaded,n=e.itemCount,r=e.minimumBatchSize,a=e.startIndex,o=e.stopIndex,i=[],s=null,l=null,c=a;c<=o;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:a,minimumBatchSize:i,startIndex:Math.max(0,e-l),stopIndex:Math.min(a-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 a=e[r],o=e[r+1],i=n(a,o);null!=i&&i.then((function(){if(function(e){var t=e.lastRenderedStartIndex,n=e.lastRenderedStopIndex,r=e.startIndex,a=e.stopIndex;return!(r>n||a{let{rowRenderFunction:t,totalItems:n,defaultHeight:a}=e;const o=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:a||220,height:s,itemCount:n,width:i,ref:r,onItemsRendered:t,children:o})}})}})})}},80882:(e,t,n)=>{"use strict";n.d(t,{A:()=>m,p:()=>h});var r=n(65043),a=n(33097),o=n.n(a),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:o()(t,"signalColors.main","#07193E")},"& .unit-type":{fontSize:"18px",color:o()(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 a=[{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:a,cx:"50%",cy:"50%",dataKey:"value",outerRadius:45,innerRadius:35,startAngle:-70,endAngle:360,animationDuration:1,children:a.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),a=n(39820);const o=(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(a.i.pending,(e=>{e.status="loading"})).addCase(a.i.rejected,(e=>{e.status="failed"})).addCase(a.i.fulfilled,((e,t)=>{e.status="idle",e.usage=t.payload}))}}),{openZoomPage:i,closeZoomPage:s,reloadWidgets:l}=o.actions,c=o.reducer},39820:(e,t,n)=>{"use strict";n.d(t,{i:()=>s});var r=n(80907),a=n(64159),o=n(56629),i=n(53518);const s=(0,r.zD)("dashboard/getUsageAsync",(async(e,t)=>{let{getState:n,rejectWithValue:r,dispatch:s}=t;return o.F.admin.adminInfo().then((e=>e.data)).catch((e=>(s((0,a.C9)((0,i.S)(e.error))),r(e))))}))},39161:(e,t,n)=>{"use strict";n.d(t,{$Y:()=>a,Ay:()=>o});const r=(0,n(80907).Z0)({name:"destination",initialState:{loading:!0},reducers:{setDestinationLoading:(e,t)=>{e.loading=t.payload}}}),{setDestinationLoading:a}=r.actions,o=r.reducer},87569:(e,t,n)=>{"use strict";n.d(t,{Ay:()=>i,Zq:()=>o,zJ:()=>a});const r=(0,n(80907).Z0)({name:"trace",initialState:{message:{}},reducers:{healthInfoMessageReceived:(e,t)=>{e.message=t.payload},healthInfoResetMessage:e=>{e.message={}}}}),{healthInfoMessageReceived:a,healthInfoResetMessage:o}=r.actions,i=r.reducer},92452:(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 a={};n.r(a),n.d(a,{boolean:()=>An,booleanish:()=>_n,commaOrSpaceSeparated:()=>On,commaSeparated:()=>In,number:()=>Cn,overloadedBoolean:()=>Tn,spaceSeparated:()=>xn});var o=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 a={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&&(a=t.position):"start"in t||"end"in t?a=t:("line"in t||"column"in t)&&(a.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=a.start.line,this.column=a.start.column,this.position=a,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,a=-1,o=e.length;if(void 0===t||0===t.length||t.length>e.length){for(;o--;)if(47===e.charCodeAt(o)){if(n){r=o+1;break}}else a<0&&(n=!0,a=o+1);return a<0?"":e.slice(r,a)}if(t===e)return"";let i=-1,s=t.length-1;for(;o--;)if(47===e.charCodeAt(o)){if(n){r=o+1;break}}else i<0&&(n=!0,i=o+1),s>-1&&(e.charCodeAt(o)===t.charCodeAt(s--)?s<0&&(a=o):(s=-1,a=i));r===a?a=i:a<0&&(a=e.length);return e.slice(r,a)},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,a=0,o=-1,i=0;for(;n--;){const s=e.charCodeAt(n);if(47!==s)r<0&&(t=!0,r=n+1),46===s?o<0?o=n:1!==i&&(i=1):o>-1&&(i=-1);else if(t){a=n+1;break}}if(o<0||r<0||0===i||1===i&&o===r-1&&o===a+1)return"";return e.slice(o,r)},join:function(){let e,t=-1;for(var n=arguments.length,r=new Array(n),a=0;a2){if(r=a.lastIndexOf("/"),r!==a.length-1){r<0?(a="",o=0):(a=a.slice(0,r),o=a.length-1-a.lastIndexOf("/")),i=l,s=0;continue}}else if(a.length>0){a="",o=0,i=l,s=0;continue}t&&(a=a.length>0?a+"/..":"..",o=2)}else a.length>0?a+="/"+e.slice(i+1,l):a=e.slice(i+1,l),o=l-i-1;i=l,s=0}else 46===n&&s>-1?s++:s=-1}return a}(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;ua.length;let c;l&&a.push(o);try{c=e.apply(this,a)}catch(r){if(l&&n)throw r;return o(r)}l||(c&&c.then&&"function"===typeof c.then?c.then(i,o):c instanceof Error?o(c):i(c))}function o(e){if(!n){n=!0;for(var r=arguments.length,a=new Array(r>1?r-1:0),o=1;oe.length){for(;o--;)if(47===e.charCodeAt(o)){if(n){r=o+1;break}}else a<0&&(n=!0,a=o+1);return a<0?"":e.slice(r,a)}if(t===e)return"";let i=-1,s=t.length-1;for(;o--;)if(47===e.charCodeAt(o)){if(n){r=o+1;break}}else i<0&&(n=!0,i=o+1),s>-1&&(e.charCodeAt(o)===t.charCodeAt(s--)?s<0&&(a=o):(s=-1,a=i));r===a?a=i:a<0&&(a=e.length);return e.slice(r,a)},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,a=0,o=-1,i=0;for(;n--;){const s=e.charCodeAt(n);if(47!==s)r<0&&(t=!0,r=n+1),46===s?o<0?o=n:1!==i&&(i=1):o>-1&&(i=-1);else if(t){a=n+1;break}}if(o<0||r<0||0===i||1===i&&o===r-1&&o===a+1)return"";return e.slice(o,r)},join:function(){let e,t=-1;for(var n=arguments.length,r=new Array(n),a=0;a2){if(r=a.lastIndexOf("/"),r!==a.length-1){r<0?(a="",o=0):(a=a.slice(0,r),o=a.length-1-a.lastIndexOf("/")),i=l,s=0;continue}}else if(a.length>0){a="",o=0,i=l,s=0;continue}t&&(a=a.length>0?a+"/..":"..",o=2)}else a.length>0?a+="/"+e.slice(i+1,l):a=e.slice(i+1,l),o=l-i-1;i=l,s=0}else 46===n&&s>-1?s++:s=-1}return a}(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 a=s.stringify(t,n);void 0===a||null===a||("string"===typeof(r=a)||i(r)?n.value=a:n.result=a),o(e,n)}else o(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(;++ra?0:a+t:t>a?a:t,n=n>0?n:0,r.length<1e4)o=Array.from(r),o.unshift(t,n),e.splice(...o);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]={}),a=t[n];let o;if(a)for(o in a){X.call(r,o)||(r[o]=[]);const e=a[o];Q(r[o],Array.isArray(e)?e:e?[e]:[])}}}function Q(e,t){let n=-1;const r=[];for(;++no))return;const n=t.events.length;let a,s,l=n;for(;l--;)if("exit"===t.events[l][0]&&"chunkFlow"===t.events[l][1].type){if(a){s=t.events[l][1].end;break}a=!0}for(b(i),e=n;er;){const r=n[a];t.containerState=r[1],r[0].exit.call(t,e)}n.length=r}function y(){r.write([null]),a=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,a,o,i,s,l,c=-1;for(;++c=4?t(a):e.interrupt(r.parser.constructs.flow,n,t)(a)}},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],a=t.attempt(r,o,i);return o;function o(e){return l(e)?a(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"),a(e)):(t.consume(e),s)}function l(e){if(null===e)return!0;const t=r[e];let a=-1;if(t)for(;++a-1){const e=i[0];"string"===typeof e?i[0]=e.slice(r):i.shift()}o>0&&i.push(e[a].slice(0,o))}return i}(i,e)}function m(){const{line:e,column:t,offset:n,_index:a,_bufferIndex:o}=r;return{line:e,column:t,offset:n,_index:a,_bufferIndex:o}}function f(){let e;for(;r._index=3&&(null===o||se(o))?(e.exit("thematicBreak"),t(o)):n(o)}function i(t){return t===r?(e.consume(t),a++,i):(e.exit("thematicBreakSequence"),ce(t)?he(e,o,"whitespace")(t):o(t))}}};const Re={name:"list",tokenize:function(e,t,n){const r=this,a=r.events[r.events.length-1];let o=a&&"linePrefix"===a[1].type?a[2].sliceSerialize(a[1],!0).length:0,i=0;return function(t){const a=r.containerState.type||(42===t||43===t||45===t?"listUnordered":"listOrdered");if("listUnordered"===a?!r.containerState.marker||t===r.containerState.marker:ae(t)){if(r.containerState.type||(r.containerState.type=a,e.enter(a,{_container:!0})),"listUnordered"===a)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 ae(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,o++,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=o+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,a,o);function a(n){return r.containerState.furtherBlankLines=r.containerState.furtherBlankLines||r.containerState.initialBlankLine,he(e,t,"listItemIndent",r.containerState.size+1)(n)}function o(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(a){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)(a)}}},exit:function(e){e.exit(this.containerState.type)}},Me={tokenize:function(e,t,n){const r=this;return he(e,(function(e){const a=r.events[r.events.length-1];return!ce(e)&&a&&"listItemPrefixWhitespace"===a[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 a=r.events[r.events.length-1];return a&&"listItemIndent"===a[1].type&&a[2].sliceSerialize(a[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"),a}return n(t)};function a(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,a,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(t);return a(t)};function a(r){return e.attempt(De,t,n)(r)}}},exit:function(e){e.exit("blockQuote")}};function Pe(e,t,n,r,a,o,i,s,l){const c=l||Number.POSITIVE_INFINITY;let u=0;return function(t){if(60===t)return e.enter(r),e.enter(a),e.enter(o),e.consume(t),e.exit(o),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(o),e.consume(n),e.exit(o),e.exit(a),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(a){return u||null!==a&&41!==a&&!le(a)?u999||null===d||91===d||93===d&&!s||94===d&&!l&&"_hiddenFootnoteSupport"in i.parser.constructs?n(d):93===d?(e.exit(o),e.enter(a),e.consume(d),e.exit(a),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,a,o){let i;return function(t){if(34===t||39===t||40===t)return e.enter(r),e.enter(a),e.consume(t),e.exit(a),i=40===t?41:t,s;return n(t)};function s(n){return n===i?(e.enter(a),e.consume(n),e.exit(a),e.exit(r),t):(e.enter(o),l(n))}function l(t){return t===i?(e.exit(o),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(a){if(se(a))return e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),n=!0,r;if(ce(a))return he(e,r,n?"linePrefix":"lineSuffix")(a);return t(a)}}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 a;return function(t){return e.enter("definition"),function(t){return Be.call(r,e,o,n,"definitionLabel","definitionLabelMarker","definitionLabelString")(t)}(t)};function o(t){return a=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(o){return null===o||se(o)?(e.exit("definition"),r.parser.defined.push(a),t(o)):n(o)}}},He={tokenize:function(e,t,n){return function(t){return le(t)?je(e,r)(t):n(t)};function r(t){return Fe(e,a,n,"definitionTitle","definitionTitleMarker","definitionTitleString")(t)}function a(t){return ce(t)?he(e,o,"whitespace")(t):o(t)}function o(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,a,"linePrefix",5)(t)};function a(e){const t=r.events[r.events.length-1];return t&&"linePrefix"===t[1].type&&t[2].sliceSerialize(t[1],!0).length>=4?o(e):n(e)}function o(t){return null===t?s(t):se(t)?e.attempt(Ve,o,s)(t):(e.enter("codeFlowValue"),i(t))}function i(t){return null===t||se(t)?(e.exit("codeFlowValue"),o(t)):(e.consume(t),i)}function s(n){return e.exit("codeIndented"),t(n)}}},Ve={tokenize:function(e,t,n){const r=this;return a;function a(t){return r.parser.lazy[r.now().line]?n(t):se(t)?(e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),a):he(e,o,"linePrefix",5)(t)}function o(e){const o=r.events[r.events.length-1];return o&&"linePrefix"===o[1].type&&o[2].sliceSerialize(o[1],!0).length>=4?t(e):se(e)?a(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"),a(t)}(t)};function a(t){return 35===t&&r++<6?(e.consume(t),a):null===t||le(t)?(e.exit("atxHeadingSequence"),o(t)):n(t)}function o(n){return 35===n?(e.enter("atxHeadingSequence"),i(n)):null===n||se(n)?(e.exit("atxHeading"),t(n)):ce(n)?he(e,o,"whitespace")(n):(e.enter("atxHeadingText"),s(n))}function i(t){return 35===t?(e.consume(t),i):(e.exit("atxHeadingSequence"),o(t))}function s(t){return null===t||35===t||le(t)?(e.exit("atxHeadingText"),o(t)):(e.consume(t),s)}},resolve:function(e,t){let n,r,a=e.length-2,o=3;"whitespace"===e[o][1].type&&(o+=2);a-2>o&&"whitespace"===e[a][1].type&&(a-=2);"atxHeadingSequence"===e[a][1].type&&(o===a-1||a-4>o&&"whitespace"===e[a-2][1].type)&&(a-=o+1===a?2:4);a>o&&(n={type:"atxHeadingText",start:e[o][1].start,end:e[a][1].end},r={type:"chunkText",start:e[o][1].start,end:e[a][1].end,contentType:"text"},Y(e,o,a-o+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 a;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"),a=t,function(t){return e.enter("setextHeadingLineSequence"),o(t)}(t);return n(t)};function o(t){return t===a?(e.consume(t),o):(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,a,o=e.length;for(;o--;)if("enter"===e[o][0]){if("content"===e[o][1].type){n=o;break}"paragraph"===e[o][1].type&&(r=o)}else"content"===e[o][1].type&&e.splice(o,1),a||"definition"!==e[o][1].type||(a=o);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",a?(e.splice(r,0,["enter",i,t]),e.splice(a+1,0,["exit",e[n][1],t]),e[n][1].end=Object.assign({},e[a][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 a,o,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),o=!0,h):63===s?(e.consume(s),a=3,r.interrupt?t:L):ee(s)?(e.consume(s),i=String.fromCharCode(s),m):n(s)}function u(o){return 45===o?(e.consume(o),a=2,d):91===o?(e.consume(o),a=5,s=0,p):ee(o)?(e.consume(o),a=4,r.interrupt?t:L):n(o)}function d(a){return 45===a?(e.consume(a),r.interrupt?t:L):n(a)}function p(a){const o="CDATA[";return a===o.charCodeAt(s++)?(e.consume(a),6===s?r.interrupt?t:C:p):n(a)}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||o||!$e.includes(c)?Ze.includes(i.toLowerCase())?(a=6,l?(e.consume(s),f):r.interrupt?t(s):C(s)):(a=7,r.interrupt&&!r.parser.lazy[r.now().line]?n(s):o?g(s):b(s)):(a=1,r.interrupt?t(s):C(s))}return 45===s||te(s)?(e.consume(s),i+=String.fromCharCode(s),m):n(s)}function f(a){return 62===a?(e.consume(a),r.interrupt?t:C):n(a)}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===a?(e.consume(t),k):60===t&&1===a?(e.consume(t),N):62===t&&4===a?(e.consume(t),D):63===t&&3===a?(e.consume(t),L):93===t&&5===a?(e.consume(t),M):!se(t)||6!==a&&7!==a?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===a?(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"),a;return n(t)};function a(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"),a};function a(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,a={tokenize:function(e,t,n){let a=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===o?(e.enter("codeFencedFenceSequence"),u(t)):n(t)}function u(t){return t===o?(a++,e.consume(t),u):a>=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 o,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,o=t,e.enter("codeFenced"),e.enter("codeFencedFence"),e.enter("codeFencedFenceSequence"),l(t)}(t)};function l(t){return t===o?(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===o?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===o?n(t):(e.consume(t),p)}function h(t){return e.attempt(a,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 a,o,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"),a=31,o=te,c(t))}function l(t){return 88===t||120===t?(e.enter("characterReferenceMarkerHexadecimal"),e.consume(t),e.exit("characterReferenceMarkerHexadecimal"),e.enter("characterReferenceValue"),a=6,o=oe,c):(e.enter("characterReferenceValue"),a=7,o=ae,c(t))}function c(s){if(59===s&&i){const a=e.exit("characterReferenceValue");return o!==te||tt(r.sliceSerialize(a))?(e.enter("characterReferenceMarker"),e.consume(s),e.exit("characterReferenceMarker"),e.exit("characterReference"),t):n(s)}return o(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),o={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},a={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({},o.start),end:Object.assign({},i.end)},e[n][1].end=Object.assign({},o.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",o,t],["exit",o,t],["enter",a,t]]),l=K(l,Oe(t.parser.constructs.insideSpan.null,e.slice(n+1,u),t)),l=K(l,[["exit",a,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(oe),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(ae),label:c,link:l(oe),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:o,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,a=0;for(;++n55295&&o<57344){const t=e.charCodeAt(n+1);o<56320&&t>56319&&t<57344?(i=String.fromCharCode(o,t),a=1):i="\ufffd"}else i=String.fromCharCode(o);i&&(t.push(e.slice(r,n),encodeURIComponent(i)),r=n+a+1,i=""),a&&(n+=a,a=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),a=1;a":"")+")"})}return u;function u(){let c,u,d,p=[];if((!t||a(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)+o,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()),a=e.footnoteOrder.indexOf(n);let o;-1===a?(e.footnoteOrder.push(n),e.footnoteCounts[n]=1,o=e.footnoteOrder.length):(e.footnoteCounts[n]++,o=a+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(o)}]};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 a=e.all(t),o=a[0];o&&"text"===o.type?o.value="["+o.value:a.unshift({type:"text",value:"["});const i=a[a.length-1];return i&&"text"===i.type?i.value+=r:a.push({type:"text",value:r}),a}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),a=0;const o=[];for(;r;)o.push(an(t.slice(a,r.index),a>0,!0),r[0]),a=r.index+r[0].length,r=n.exec(t);return o.push(an(t.slice(a),a>0,!1)),o.join("")}function an(e,t,n){let r=0,a=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(a-1);for(;t===tn||t===nn;)a--,t=e.codePointAt(a-1)}return a>r?e.slice(r,a):""}const on={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,a={};r&&(a.className=["language-"+r]);let o={type:"element",tagName:"code",properties:a,children:[{type:"text",value:n}]};return t.meta&&(o.data={meta:t.meta}),e.patch(t,o),o=e.applyData(t,o),o={type:"element",tagName:"pre",properties:{},children:[o]},e.patch(t,o),o},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 a=String(r);return n[a]={type:"footnoteDefinition",identifier:a,children:[{type:"paragraph",children:t.children}],position:t.position},Jt(e,{type:"footnoteReference",identifier:a,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 a={type:"element",tagName:"img",properties:r,children:[]};return e.patch(t,a),e.applyData(t,a)},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 a={type:"element",tagName:"a",properties:r,children:e.all(t)};return e.patch(t,a),e.applyData(t,a)},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),a=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:[]}),o.className=["task-list-item"]}let s=-1;for(;++s0){const r={type:"element",tagName:"tbody",properties:{},children:e.wrap(n,!0)},o=Zt(t.children[1]),i=$t(t.children[t.children.length-1]);o.line&&i.line&&(r.position={start:o,end:i}),a.push(r)}const o={type:"element",tagName:"table",properties:{},children:e.wrap(a,!0)};return e.patch(t,o),e.applyData(t,o)},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,a=0===(r?r.indexOf(t):1)?"th":"td",o=n&&"table"===n.type?n.align:void 0,i=o?o.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=a,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=o,Wt(e,"footnoteDefinition",(e=>{const t=String(e.identifier).toUpperCase();ln.call(a,t)||(a[t]=e)})),i;function o(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={}),o(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,a=e.data.hProperties;"string"===typeof t&&("element"===n.type?n.tagName=t:n={type:"element",tagName:t,properties:{},children:[]}),"element"===n.type&&a&&(n.properties={...n.properties,...a}),"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 a=-1;for(;++a0&&n.push({type:"text",value:"\n"}),n}function fn(e,t){const n=cn(e,t),r=n.one(e,null),a=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=a[a.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 a.push(...l);const u={type:"element",tagName:"li",properties:{id:e.clobberPrefix+"fn-"+i},children:e.wrap(a,!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 a&&r.children.push({type:"text",value:"\n"},a),Array.isArray(r)?{type:"root",children:r}:r}const gn=function(e,t){return e&&"run"in e?function(e,t){return(n,r,a)=>{e.run(fn(n,t),r,(e=>{a(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 a=-1;for(;++a"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 a=r;let o;if(e.allowedElements?o=!e.allowedElements.includes(t.tagName):e.disallowedElements&&(o=e.disallowedElements.includes(t.tagName)),!o&&e.allowElement&&"number"===typeof n&&(o=!e.allowElement(t,n,a)),o&&"number"===typeof n)return e.unwrapDisallowed&&t.children?a.children.splice(n,1,...t.children):a.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 a=-1;for(;++aa?t:(a=t.indexOf("#"),-1!==a&&r>a?t:"javascript:void(0)")}const ar={}.hasOwnProperty,or=new Set(["table","thead","tbody","tfoot","tr"]);function ir(e,t){const n=[];let r,a=-1;for(;++a0?o.createElement(m,c,p):o.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}}a=Rn}return new a(r,t)}(r.schema,t);let o=n;null!==o&&void 0!==o&&o===o&&(Array.isArray(o)&&(o=a.commaSeparated?function(e,t){const n=t||{};return(""===e[e.length-1]?[...e,""]:e).join((n.padRight?" ":"")+","+(!1===n.padLeft?"":" ")).trim()}(o):o.join(" ").trim()),"style"===a.property&&"string"===typeof o&&(o=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}}(o)),a.space&&a.property?e[ar.call(er,a.property)?er[a.property]:a.property]=o:a.attribute&&(e[a.attribute]=o))}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 o in pr)if(dr.call(pr,o)&&dr.call(e,o)){const e=pr[o];console.warn("[react-markdown] Warning: please ".concat(e.to?"use `".concat(e.to,"` instead of"):"remove"," `").concat(o,"` (see <").concat("https://github.com/remarkjs/react-markdown/blob/main/changelog.md","#").concat(e.id,"> for more info)")),delete pr[o]}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 a=o.createElement(o.Fragment,{},ir({options:e,schema:Vn,listDepth:0},r));return e.className&&(a=o.createElement("div",{className:e.className},a)),a}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(20554),Er=n(64159),wr=n(70579);const Sr=e=>{let{LeadingIcon:t,text:n,link:r,color:a}=e;return(0,wr.jsx)("a",{style:{color:a,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)(o.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,o.useState)([]),[a,i]=(0,o.useState)(null),[s,l]=(0,o.useState)([]),[c,u]=(0,o.useState)(null),[d,p]=(0,o.useState)([]),[h,m]=(0,o.useState)(null),[f,g]=(0,o.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,o.useRef)(null);var w;w=E,(0,o.useEffect)((()=>{function e(e){w.current&&!w.current.contains(e.target)&&g(!1)}return document.addEventListener("mousedown",e),()=>{document.removeEventListener("mousedown",e)}}),[w]),(0,o.useEffect)((()=>{let t=0,n=0,o=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),o=e[b].video.links.length);let s="docs",d=!1;0===t&&null===a&&"docs"===y&&(s=0!==o||null!==c?"video":"blog",d=!0),0===o&&null===c&&"video"===y&&(s=0!==t||null!==a?"docs":"blog",d=!0),0===n&&null===h&&"blog"===y&&(s=0!==t||null!==a?"docs":"video",d=!0),d&&v((0,Er.m0)(s))}else r(e.help.docs.links),p([]),l([])}),[b,y,v,e,h,a,c]);const S=(0,wr.jsxs)(br.azJ,{className:"helpContainer",children:[a&&(0,wr.jsxs)("div",{style:{paddingLeft:16,paddingRight:16},children:[(0,wr.jsx)("div",{children:(0,wr.jsx)(hr,{children:"".concat(a)})}),(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)(o.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://min.io/videos?ref=con",color:"#C5293F"})})]}),_=(0,wr.jsxs)(br.azJ,{className:"helpContainer",children:[h&&(0,wr.jsxs)(o.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)(o.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)}})]})}},35731:(e,t,n)=>{"use strict";n.d(t,{A:()=>u});var r=n(65043),a=n(94574),o=n(33097),i=n.n(o),s=n(70579);const l=a.Ay.a((e=>{let{theme:t}=e;return{color:i()(t,"signalColors.info","#2781B0"),fontWeight:600}})),c=(e,t)=>(0,s.jsx)(l,{href:t,target:"_blank",children:e}),u=()=>(0,s.jsxs)(r.Fragment,{children:[(0,s.jsx)("h2",{children:"What is the GNU AGPL v3?"}),(0,s.jsxs)("p",{children:['The GNU AGPL v3 is short for the "GNU Affero General Public License v3". It is a'," ",c("FOSS","https://en.wikipedia.org/wiki/Free_and_open-source_software")," ","license certified by the"," ",c("Free Software Foundation","https://www.fsf.org/")," and the Open Source Initiative. You can get a copy of the GNU AGPL v3 license with MinIO source code or at"," ",c("https://www.gnu.org/licenses/agpl-3.0.en.html","https://min.io/compliance?ref=con"),"."]}),(0,s.jsx)("h2",{children:"What does it mean for me to comply with the GNU AGPL v3?"}),(0,s.jsx)("p",{children:"When you host or distribute MinIO over a network, the AGPL v3 applies to you. Any distribution or copying of MinIO software modified or not has to comply with the obligations specified in the AGPL v3 license. You must include the source code, full license text and the original copyright notice along with the object code."}),(0,s.jsxs)("p",{children:["We recommend the"," ",c("Free Software Foundation\u2019s interpretation","https://www.gnu.org/licenses/agpl-3.0.en.html")," ","of the GNU AGPL v3 license."]}),(0,s.jsx)("h2",{children:"Making combined or derivative works of MinIO"}),(0,s.jsx)("p",{children:"Creating combined or derivative works of MinIO requires all such works to be released under the same license."}),(0,s.jsx)("p",{children:"If MinIO source code is included in the same executable file, they are definitely combined in one program. If modules are designed to run linked together in a shared address space, that almost surely means combining them into one program."}),(0,s.jsx)("p",{children:"By contrast, pipes, sockets, RESTful APIs, and command-line arguments are communication mechanisms normally used between two separate programs. So when they are used for communication, the modules normally are separate programs. But if the semantics of the communication are intimate enough, exchanging complex internal data structures, that too could be a basis to consider the two parts as combined into a larger program."}),(0,s.jsxs)("p",{children:["Merely aggregating MinIO software into your distribution does not constitute derivative works. For more information, please refer to the"," ",c("GPL FAQ","https://www.gnu.org/licenses/gpl-faq.en.html#MereAggregation"),"."]}),(0,s.jsx)("p",{}),(0,s.jsx)("h2",{children:"Talking to your Legal Counsel"}),(0,s.jsx)("p",{children:"If you have questions, we recommend that you talk to your own attorney for legal advice. Purchasing a commercial license from MinIO removes the GNU AGPL v3 obligations from MinIO software."})]})},57195:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});n(65043);var r=n(70579);const a=()=>(0,r.jsx)("a",{className:"link-text",href:"https://min.io/compliance?ref=con",children:"GNU AGPL v3"})},92811:(e,t,n)=>{"use strict";n.d(t,{Ay:()=>i,s2:()=>o,y:()=>a});const r=(0,n(80907).Z0)({name:"license",initialState:{faqModalOpen:!1},reducers:{openFAQModal:e=>{e.faqModalOpen=!0},closeFAQModal:e=>{e.faqModalOpen=!1}}}),{openFAQModal:a,closeFAQModal:o}=r.actions,i=r.reducer},95428:(e,t,n)=>{"use strict";n.d(t,{_T:()=>f,yf:()=>b,c_:()=>m,Bx:()=>p,M7:()=>y,_2:()=>g,Gy:()=>S,CA:()=>v,YN:()=>w});var r=n(57195),a=n(92811),o=n(20554),i=(n(65043),n(94141)),s=n(35731),l=n(22166),c=n(70579);const u=()=>{const e=(0,o.jL)(),t=(0,l.d4)((e=>e.license.faqModalOpen));return(0,c.jsx)(i.A,{modalOpen:t,title:"License FAQ",onClose:()=>{e((0,a.s2)())},children:(0,c.jsx)(s.A,{})})};var d=n(89923);const p={COMMUNITY:"community",STANDARD:"standard",ENTERPRISE:"enterprise"},h=e=>{let{text:t,anchor:n}=e;return(0,c.jsx)("a",{href:"https://min.io/product/subnet?ref=con#".concat(n),className:"link-text",target:"_blank",rel:"noopener ",style:{color:"#2781B0"},children:t})},m=[{label:"License ",isHeader:!0},{label:"",isHeader:!1,style:{height:"400px",verticalAlign:"top",alignItems:"start"}},{desc:"Features",featureTitleRow:!0},{desc:"Unit Price"},{desc:()=>(0,c.jsx)(h,{anchor:"sa-long-term-support",text:"Software Release"})},{desc:"SLA"},{desc:"Support"},{desc:"Critical Security and Bug Detection"},{desc:()=>(0,c.jsx)(h,{anchor:"sa-panic-button",text:"Panic Button"})},{desc:()=>(0,c.jsx)(h,{anchor:"sa-healthcheck",text:"Health Diagnostics"})},{desc:"Annual Architecture Review"},{desc:"Annual Performance Review"},{desc:"Indemnification"},{desc:"Security and Policy Review"}],f=[{label:"Community",isHeader:!0,style:{borderBottom:0}},{label:()=>(0,c.jsx)(d.azJ,{sx:{textAlign:"left"},children:(0,c.jsxs)("span",{children:["Designed for developers who are building open source applications in compliance with the ",(0,c.jsx)(r.A,{})," license, MinIO Trademarks and are able to self support themselves. It is fully featured. If you distribute, host or create derivative works of the MinIO software over the network, the ",(0,c.jsx)(r.A,{})," license requires that you also distribute the complete, corresponding source code of the combined work under the same ",(0,c.jsx)(r.A,{})," license. This requirement applies whether or not you modified MinIO.",(0,c.jsx)("br",{}),(0,c.jsx)("br",{}),(0,c.jsx)("span",{className:"link-text",onClick:()=>{o.Ay.dispatch((0,a.y)())},children:"Compliance FAQ"}),(0,c.jsx)(u,{})]})}),isHeader:!1,style:{height:"400px",borderBottom:0}},{id:"com_feat_title",featureTitleRow:!0},{id:"com_license_cost"},{id:"com_release",label:"Upstream"},{id:"com_sla",label:"No SLA"},{id:"com_support",label:"Community:",detail:"Slack + GitHub"},{id:"com_security",label:"Self"},{id:"com_panic",xsLabel:"N/A"},{id:"com_diag",xsLabel:"N/A"},{id:"com_arch",xsLabel:"N/A"},{id:"com_perf",xsLabel:"N/A"},{id:"com_indemnity",xsLabel:"N/A"},{id:"com_sec_policy",xsLabel:"N/A"}],g=[{label:"Standard",isHeader:!0,style:{borderBottom:0}},{isHeader:!1,label:()=>(0,c.jsxs)(d.azJ,{sx:{marginTop:"-85px",textAlign:"left"},children:[(0,c.jsxs)("span",{children:["Designed for customers who require a commercial license and can mostly self-support but want the peace of mind that comes with the MinIO Subscription Network\u2019s suite of operational capabilities and direct-to-engineer interaction. The Standard version is fully featured but with SLA limitations. ",(0,c.jsx)("br",{})," ",(0,c.jsx)("br",{})," To learn more about the MinIO Subscription Network"]})," ",(0,c.jsx)("a",{href:"https://min.io/product/subnet?ref=con",className:"link-text",target:"_blank",rel:"noopener",children:"click here"}),"."]}),style:{height:"400px",borderBottom:0}},{id:"std_feat_title",featureTitleRow:!0},{id:"std_license_cost",label:()=>(0,c.jsx)(d.azJ,{sx:{fontSize:"16px",fontWeight:600},children:"$10 per TiB per month"}),detail:()=>(0,c.jsx)(d.azJ,{sx:{fontSize:"14px",fontWeight:400,marginBottom:"5px"},children:"(Minimum of 200TiB)"})},{id:"std_release",label:"1 Year Long Term Support"},{id:"std_sla",label:"<48 Hours",detail:"(Local Business Hours)"},{id:"std_support",label:"L4 Direct Engineering",detail:"support via SUBNET"},{id:"std_security",label:"Continuous Scan and Alert"},{id:"std_panic",label:"1 Per year"},{id:"std_diag",label:"24/7/365"},{id:"std_arch",xsLabel:"N/A"},{id:"std_perf",xsLabel:"N/A"},{id:"std_indemnity",xsLabel:"N/A"},{id:"std_sec_policy",xsLabel:"N/A"}],b=[{label:"Enterprise",isHeader:!0,style:{borderBottom:0}},{isHeader:!1,label:()=>(0,c.jsxs)(d.azJ,{sx:{marginTop:"-135px",textAlign:"left"},children:[(0,c.jsxs)("span",{children:["Designed for mission critical environments where both a license and strict SLAs are required. The Enterprise version is fully featured but comes with additional capabilities. ",(0,c.jsx)("br",{})," ",(0,c.jsx)("br",{})," To learn more about the MinIO Subscription Network"]})," ",(0,c.jsx)("a",{href:"https://min.io/product/subnet?ref=con",className:"link-text",target:"_blank",rel:"noopener",children:"click here"}),"."]}),style:{height:"400px",borderBottom:0}},{id:"end_feat_title",featureTitleRow:!0},{id:"ent_license_cost",label:()=>(0,c.jsx)(d.azJ,{sx:{fontSize:"16px",fontWeight:600},children:"$20 per TiB per month"}),detail:()=>(0,c.jsx)(d.azJ,{sx:{fontSize:"14px",fontWeight:400,marginBottom:"5px"},children:"(Minimum of 100TiB)"})},{id:"ent_release",label:"5 Years Long Term Support"},{id:"ent_sla",label:"<1 hour"},{id:"ent_support",label:"L4 Direct Engineering support via",detail:"SUBNET, Phone, Web Conference"},{id:"ent_security",label:"Continuous Scan and Alert"},{id:"ent_panic",label:"Unlimited"},{id:"ent_diag",label:"24/7/365"},{id:"ent_arch",yesIcon:!0},{id:"ent_perf",yesIcon:!0},{id:"ent_indemnity",yesIcon:!0},{id:"ent_sec_policy",yesIcon:!0}],y=[p.STANDARD,p.ENTERPRISE],v=e=>"function"===typeof e?e():e,E="agpl_minio_license_consent",w=()=>{localStorage.setItem(E,"true")},S=()=>"true"===localStorage.getItem(E)},3883:(e,t,n)=>{"use strict";n.d(t,{Ay:()=>c,Ib:()=>s,Jb:()=>i,xW:()=>l});var r=n(80907),a=n(24241);const o=(0,r.Z0)({name:"logs",initialState:{logMessages:[],logsStarted:!1},reducers:{logMessageReceived:(e,t)=>{let n=e.logMessages;const r=a.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 a in n)1===n[a].time.getFullYear()&&(n[a].ConsoleMsg="".concat(n[a].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}=o.actions,c=o.reducer},48617:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>O});var r=n(65043),a=n(73216),o=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(20554),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(92452),_=n(80882),T=n(70579);const C=()=>{const e=(0,m.jL)(),t=(0,a.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)("*",[o.OV.S3_LIST_BUCKET,o.OV.S3_ALL_LIST_BUCKET]),P=[{type:"view",onClick:e=>{!x&&t("".concat(o.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,o.vj)([o.OV.S3_LIST_BUCKET,o.OV.S3_ALL_LIST_BUCKET],"view the buckets on this server"),(0,T.jsx)("br",{})]}),(0,T.jsxs)(u.R,{scopes:[o.OV.S3_CREATE_BUCKET],resource:o.Ms,children:[(0,T.jsx)("br",{}),"To get started,\xa0",(0,T.jsx)(l.t53,{onClick:()=>{t(o.zZ.ADD_BUCKETS)},children:"Create a Bucket."})]})]})})})})]})]})]})},x=r.lazy((()=>Promise.all([n.e(8144),n.e(2959)]).then(n.bind(n,27945)))),I=r.lazy((()=>n.e(9619).then(n.bind(n,9619)))),O=()=>(0,T.jsxs)(a.BV,{children:[(0,T.jsx)(a.qh,{path:o.zZ.ADD_BUCKETS,element:(0,T.jsx)(r.Suspense,{fallback:(0,T.jsx)(i.A,{}),children:(0,T.jsx)(I,{})})}),(0,T.jsx)(a.qh,{path:"/",element:(0,T.jsx)(r.Suspense,{fallback:(0,T.jsx)(i.A,{}),children:(0,T.jsx)(C,{})})}),(0,T.jsx)(a.qh,{path:"/:bucketName/*",element:(0,T.jsx)(r.Suspense,{fallback:(0,T.jsx)(i.A,{}),children:(0,T.jsx)(x,{})})}),(0,T.jsx)(a.qh,{path:":bucketName/",element:(0,T.jsx)(r.Suspense,{fallback:(0,T.jsx)(i.A,{}),children:(0,T.jsx)(x,{})})}),(0,T.jsx)(a.qh,{element:(0,T.jsx)(a.C5,{to:"/browser"}),path:"*"}),(0,T.jsx)(a.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:()=>b,A3:()=>N,A7:()=>C,AE:()=>h,AP:()=>M,Ai:()=>w,Ay:()=>X,DW:()=>c,Dm:()=>v,EG:()=>p,Ew:()=>F,I3:()=>q,I8:()=>Z,Jl:()=>W,KX:()=>B,Lf:()=>U,MC:()=>O,NV:()=>G,Nu:()=>f,PJ:()=>V,QV:()=>$,Qy:()=>L,SK:()=>A,TO:()=>T,Yw:()=>H,Zn:()=>I,aj:()=>E,cP:()=>l,cQ:()=>s,go:()=>j,iL:()=>d,iW:()=>P,lA:()=>S,oe:()=>_,p$:()=>k,rS:()=>i,rx:()=>u,u:()=>y,uR:()=>x,v8:()=>o,vn:()=>R,vv:()=>m,xE:()=>z,xW:()=>D,y3:()=>Y,yL:()=>K});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},a=(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,a=e.objectManager.objectsToManage[n].ID;"download"===r?e.objectManager.currentDownloads=e.objectManager.currentDownloads.filter((e=>e!==a)):"upload"===r&&(e.objectManager.currentUploads=e.objectManager.currentUploads.filter((e=>e!==a)))},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,a=e.objectManager.objectsToManage[n].ID;"download"===r?e.objectManager.currentDownloads=e.objectManager.currentDownloads.filter((e=>e!==a)):"upload"===r&&(e.objectManager.currentUploads=e.objectManager.currentUploads.filter((e=>e!==a)))},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,a=e.objectManager.objectsToManage[n].ID;"download"===r?e.objectManager.currentDownloads=e.objectManager.currentDownloads.filter((e=>e!==a)):"upload"===r&&(e.objectManager.currentUploads=e.objectManager.currentUploads.filter((e=>e!==a)))},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:o,resetRewind:i,setVersionsModeEnabled:s,setNewObject:l,updateProgress:c,completeObject:u,failObject:d,deleteFromList:p,cleanList:h,toggleList:m,openList:f,closeList:g,setSearchObjects:b,setRequestInProgress:y,cancelObjectInList:v,setSearchVersions:E,setSelectedVersion:w,setShowDeletedObjects:S,setLoadingVersions:A,setLoadingObjectInfo:_,setObjectDetailsView:T,setSelectedObjectView:C,setSimplePathHandler:x,newDownloadInit:I,newUploadInit:O,setRecords:k,resetMessages:N,setLoadingVersioning:R,setIsVersioned:M,setLoadingLocking:L,setLockingEnabled:D,newMessage:P,setSelectedObjects:B,setDownloadRenameModal:F,setSelectedPreview:j,setPreviewOpen:z,setShareFileModalOpen:U,setReloadObjectsList:H,restoreLocalObjectList:G,setRetentionConfig:V,setSelectedBucket:q,setLongFileOpen:W,setAnonymousAccessOpen:Z,setMaxShareLinkExpTime:$,errorInConnection:Y}=a.actions,K=e=>e.objectBrowser.maxShareLinkExpTime,X=a.reducer},37414:(e,t,n)=>{"use strict";n.d(t,{E0:()=>u,FP:()=>o,G3:()=>l,OV:()=>i,vx:()=>s,vy:()=>c});let r={},a={};const o=(e,t)=>{r[e]=t},i=e=>r[e],s=(e,t)=>{a[e]=t},l=e=>a[e],c=e=>{delete r[e],delete a[e]},u=e=>{for(var t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",r=0;r{"use strict";n.d(t,{AS:()=>l,Ay:()=>w,Gf:()=>m,Lz:()=>d,NG:()=>c,RB:()=>b,UY:()=>v,WK:()=>g,a2:()=>p,dP:()=>u,h7:()=>E,nR:()=>h,pb:()=>s,r1:()=>f,w0:()=>y});var r=n(80907);const a={license:"",subnetPassword:"",subnetEmail:"",subnetMFAToken:"",subnetOTP:"",subnetAccessToken:"",selectedSubnetOrganization:"",subnetRegToken:"",subnetOrganizations:[],loading:!1,loadingLicenseInfo:!1,clusterRegistered:!1,licenseInfo:void 0,curTab:"simple-tab-0"},o=(0,r.Z0)({name:"register",initialState:a,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:()=>a}}),{setLicense:i,setSubnetPassword:s,setSubnetEmail:l,setSubnetMFAToken:c,setSubnetOTP:u,setSubnetAccessToken:d,setSelectedSubnetOrganization:p,setSubnetRegToken:h,setSubnetOrganizations:m,setLoading:f,setLoadingLicenseInfo:g,setClusterRegistered:b,setLicenseInfo:y,setCurTab:v,resetRegisterForm:E}=o.actions,w=o.reducer},65259:(e,t,n)=>{"use strict";n.d(t,{Ay:()=>s,cI:()=>a,p:()=>i,rZ:()=>o});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:a,traceResetMessages:o,setTraceStarted:i}=r.actions,s=r.reducer},62560:(e,t,n)=>{"use strict";n.d(t,{AE:()=>u,Ay:()=>h,Gy:()=>c,ht:()=>i,ir:()=>l,yD:()=>s,yt:()=>d});var r=n(80907),a=n(88115);const o=(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(a.o.fulfilled,((e,t)=>{e.userName="",e.selectedGroups=[],e.secretKey="",e.selectedPolicies=[]})).addCase(a.y.pending,((e,t)=>{e.addLoading=!0})).addCase(a.y.rejected,((e,t)=>{e.addLoading=!1})).addCase(a.y.fulfilled,((e,t)=>{e.apinoerror=!0}))}}),{setUserName:i,setSelectedGroups:s,setSecretKey:l,setSelectedPolicies:c,setAddLoading:u,setSendEnabled:d,setApinoerror:p}=o.actions,h=o.reducer},88115:(e,t,n)=>{"use strict";n.d(t,{o:()=>s,y:()=>l});var r=n(80907),a=n(62560),o=n(64159),i=n(20649);const s=(0,r.zD)("resetForm/resetFormAsync",(async(e,t)=>{let{dispatch:n}=t;n((0,a.yD)([])),n((0,a.ht)("")),n((0,a.ir)("")),n((0,a.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,a.AE)(!1)),l(s())})).catch((e=>{l((0,a.AE)(!1)),l((0,o.C9)(e))}))}))},68603:(e,t,n)=>{"use strict";n.d(t,{Ay:()=>i,ID:()=>o,n4:()=>a});const r=(0,n(80907).Z0)({name:"trace",initialState:{messages:[]},reducers:{watchMessageReceived:(e,t)=>{e.messages.push(t.payload)},watchResetMessages:e=>{e.messages=[]}}}),{watchResetMessages:a,watchMessageReceived:o}=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),a=n(57981),o=n(63642);const i={session:{},sessionLoadingState:o.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(a.f.pending,((e,t)=>{e.sessionLoadingState=o.v.Loading})).addCase(a.f.fulfilled,((e,t)=>{e.sessionLoadingState=o.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),a=n(73216),o=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(20554),c=n(22166),u=n(27545),d=n(93396),p=n(70579);const h=e=>{let{redirectRules:t}=e;const n=(0,l.jL)(),[a,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)(o.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)(o.azJ,{sx:{marginBottom:40},children:[(0,p.jsx)(o.$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(!a),void h(e.currentTarget);S("".concat(t[0].redirect))}}),t.length>1&&(0,p.jsx)(o.Vey,{id:"redirect-rules",options:w,selectedOption:"",onSelect:e=>S(e),hideTriggerAction:()=>{i(!1)},open:a,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)(o.xA9,{container:!0,sx:{marginTop:t.length>0?55:0},children:[(0,p.jsx)(o.xA9,{item:!0,xs:12,sx:{marginBottom:14},children:(0,p.jsx)(o.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)(o.ZfC,{})})}),(0,p.jsx)(o.xA9,{item:!0,xs:12,sx:{marginBottom:b?14:0},children:(0,p.jsx)(o.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)(o.fYD,{})})}),b&&(0,p.jsx)(o.xA9,{item:!0,xs:12,children:(0,p.jsx)(o.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)(o.aJN,{})})})]}),(0,p.jsx)(o.xA9,{item:!0,xs:12,sx:{textAlign:"right",marginTop:30},children:(0,p.jsx)(o.$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)(o.xA9,{item:!0,xs:12,sx:{height:10},children:v&&(0,p.jsx)(o.z21,{})})]}),(0,p.jsx)(o.xA9,{item:!0,xs:12,sx:{marginTop:45},children:(0,p.jsx)(o.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,a.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)(o.azJ,{sx:{textAlign:"center","& .loadingLoginStrategy":{textAlign:"center",width:40,height:40},"& .buttonRetry":{display:"flex",justifyContent:"center"}},children:b?(0,p.jsx)(o.aHM,{className:"loadingLoginStrategy"}):(0,p.jsxs)(r.Fragment,{children:[(0,p.jsx)(o.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)(o.$nd,{onClick:()=>{e((0,u.v)())},icon:(0,p.jsx)(o.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)(o.ndn,{logoProps:{applicationName:"console",subVariant:(0,m.vP)()},form:w,formFooter:(0,p.jsxs)(o.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),a=n(27545);const o={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:o,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=>o},extraReducers:e=>{e.addCase(a.v.pending,((e,t)=>{e.loadingFetchConfiguration=!0})).addCase(a.v.rejected,((e,t)=>{e.loadingFetchConfiguration=!1})).addCase(a.v.fulfilled,((e,t)=>{e.loadingFetchConfiguration=!1,t.payload&&(e.loginStrategy=t.payload,e.isK8S=!!t.payload.isK8S,e.backgroundAnimation=!!t.payload.animatedLogin)})).addCase(a.V.pending,((e,t)=>{e.loginSending=!0})).addCase(a.V.rejected,((e,t)=>{e.loginSending=!1})).addCase(a.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),a=n(64159),o=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,a.WQ)(!0)),localStorage.setItem("userLoggedIn",p),u((0,o.Jq)((0,i.getTargetPath)())),u((0,a.S8)(!!t))})).catch((async e=>{const t=await e.json();return u((0,a.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,a.C9)((0,l.S)(t))),r(!1)}))}))},57981:(e,t,n)=>{"use strict";n.d(t,{f:()=>u});var r=n(80907),a=n(64159),o=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 o.F.session.sessionCheck().then((e=>{if(r((0,a.WQ)(!0)),r((0,s.tz)(e.data)),r((0,a.s3)(e.data.distributedMode||!1)),e.data.customStyles&&""!==e.data.customStyles){const t=(0,c.S0)(e.data.customStyles);!1!==t&&r((0,a.DF)(t))}})).catch((async e=>{if("browser"===p){const e=d.length>=3?d[2]:"";if(""===e)return;o.F.buckets.listObjects(e,{limit:1},{headers:{"X-Anonymous":"1"}}).then((()=>{r((0,a.fO)())})).catch((e=>{r((0,a.C9)((0,i.S)(e.error)))})).finally((()=>{r((0,s.cv)(l.v.Done))}))}else r((0,s.cv)(l.v.Done)),r((0,a.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),a=n(70579);function o(){return(0,a.jsxs)(r.azJ,{className:"muted",sx:{textAlign:"center"},children:["Copyright \xa9 ",(0,a.jsx)("a",{href:"https://min.io/?ref=con",children:"MinIO"})," ",(new Date).getFullYear(),"."]})}const i=()=>(0,a.jsx)(r.Mxu,{children:(0,a.jsxs)(r.azJ,{sx:{display:"flex",alignItems:"center",justifyContent:"center",height:"100%",textAlign:"center",margin:"auto",flexFlow:"column"},children:[(0,a.jsx)(r.azJ,{sx:{fontSize:"110%",margin:"0 0 0.25rem",color:"#909090"},children:"404 Error"}),(0,a.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,a.jsx)(r.azJ,{sx:{marginTop:20},children:(0,a.jsx)(o,{})})]})})},20554:(e,t,n)=>{"use strict";n.d(t,{Ay:()=>R,M_:()=>O,jL:()=>k,GV:()=>N});var r=n(22166),a=n(77048),o=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),y=n(92811),v=n(41379),E=n(39161),w=n(33097),S=n.n(w),A=n(32511),_=n(56483),T=n(93445);let C=!1,x=0;const I=(0,a.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.Ay,destination:E.Ay}),O=(0,o.U1)({reducer:I,middleware:e=>e().concat((e=>t=>n=>r=>{const a=t.dispatch,o=t.getState(),s=S()(o,"console.session.allowResources",null),l=S()(o,"objectBrowser.selectedBucket",""),{type:c}=r;switch(c){case"socket/OBConnect":const t=S()(o,"system.loggedIn",!1);if(C||!t)return;C=!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=()=>{C=!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(x===r.request_id){var o,c;if(r.request_id!==x)return;if(401===(null===(o=r.error)||void 0===o?void 0:o.Code))window.location.reload();else{if(403===(null===(c=r.error)||void 0===c?void 0:c.Code)){const e=r.prefix;let o="";if(e){const t=(0,_.x6)(e);o=t.endsWith("/")?t:t+"/"}const c=(0,T.W3)(r.bucketName||l,o,s||[]);if(c&&0!==c.length)a((0,f.u)(!1)),a((0,f.p$)(c));else{const e=r.error.APIError;a((0,i.C9)({errorMessage:e.message||t,detailedError:e.detailedMessage||n}))}return}if(r.error){const e=r.error.APIError;a((0,f.u)(!1)),a((0,i.C9)({errorMessage:e.message||t,detailedError:e.detailedMessage||n}))}}if(r.request_end)return void a((0,f.u)(!1));r.data&&(a((0,f.u)(!1)),a((0,f.iW)(r.data)))}},e.onclose=()=>{C=!1,console.warn("Websocket Disconnected. Attempting Reconnection..."),setTimeout((()=>a({type:"socket/OBConnect"})),3e3)},e.onerror=()=>{C=!1,console.error("Error in websocket connection. Attempting reconnection...")};break;case"socket/OBRequest":if(e&&1===e.readyState)try{const t=x+1,n=r.payload;a((0,f.A3)()),a((0,f.y3)(!1)),a((0,f.uR)(n.path)),a((0,f.I3)(n.bucketName)),a((0,f.u)(!0)),a((0,f.Yw)(!1)),a((0,f.$X)("")),a((0,f.KX)([]));const o={bucket_name:n.bucketName,prefix:(0,_.nf)(n.path),mode:n.rewindMode?"rewind":"objects",date:n.date,request_id:t};e.send(JSON.stringify(o)),x=t}catch(u){console.error(u)}else a((0,f.Yw)(!1)),C||a({type:"socket/OBConnect"}),setTimeout((()=>a({type:"socket/OBRequest",payload:r.payload})),1e3);break;case"socket/OBCancelLast":const h={mode:"cancel",request_id:x};e&&1===e.readyState&&e.send(JSON.stringify(h));break;case"socket/OBDisconnect":e.close()}return n(r)})(undefined))});const k=()=>(0,r.wA)(),N=r.d4,R=O},64159:(e,t,n)=>{"use strict";n.d(t,{Ay:()=>N,C9:()=>m,DF:()=>w,Dy:()=>f,Hk:()=>h,MO:()=>c,OF:()=>v,Rq:()=>O,S8:()=>I,TE:()=>_,WQ:()=>s,YR:()=>u,f7:()=>b,fO:()=>S,fw:()=>x,h0:()=>g,m0:()=>C,nM:()=>k,ph:()=>T,qf:()=>d,s3:()=>y,vv:()=>A});var r=n(80907),a=n(33479);const o={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,a.NF)()},i=(0,r.Z0)({name:"system",initialState:o,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:()=>o}}),{userLogged:s,showMarketplace:l,menuOpen:c,setServerNeedsRestart:u,serverIsLoading:d,setLoadingProgress:p,setSnackBarMessage:h,setErrorSnackMessage:m,setModalErrorSnackMessage:f,setModalSnackMessage:g,setServerDiagStat:b,globalSetDistributedSetup:y,setSiteReplicationInfo:v,setSystemLicenseInfo:E,setOverrideStyles:w,setAnonymousMode:S,resetSystem:A,configurationIsLoading:_,setHelpName:T,setHelpTabName:C,setLocationPath:x,setDarkMode:I}=i.actions,O=e=>e.system.distributedSetup,k=e=>e.system.siteReplicationInfo,N=i.reducer},33479:(e,t,n)=>{"use strict";n.d(t,{NF:()=>s,S0:()=>o,pB:()=>i,vb:()=>l});var r=n(33097),a=n.n(r);const o=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 a()(e,"matches",!1)}return"on"===e},l=e=>{localStorage.setItem("dark-mode",e)}},32511:(e,t,n)=>{"use strict";n.d(t,{Sf:()=>o,gU:()=>a,nw:()=>i,wU:()=>r});const r=1006,a=1008,o=1011,i=e=>{let t="ws";return"https:"===e&&(t="wss"),t}},93820:(e,t,n)=>{var r=n(65043);function a(e,t,n,r){Object.defineProperty(e,t,{get:n,set:r,enumerable:!0,configurable:!0})}function o(){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;no)),a(e.exports,"useComposedRefs",(()=>i))},80057:(e,t,n)=>{var r=n(94634),a=n(65043),o=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=a.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(o).createPortal(a.createElement(i.Primitive.div,l(r)({},c,{ref:t})),s):null})),u=c},60432:(e,t,n)=>{var r=n(94634),a=n(65043),o=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=a.forwardRef(((e,n)=>{const{asChild:o,...s}=e,l=o?i.Slot:t;return a.useEffect((()=>{window[Symbol.for("radix-ui")]=!0}),[]),a.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&&o.flushSync((()=>e.dispatchEvent(t)))}const u=l},18463:(e,t,n)=>{var r=n(94634),a=n(65043),o=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=a.forwardRef(((e,t)=>{const{children:n,...o}=e,i=a.Children.toArray(n),l=i.find(d);if(l){const e=l.props.children,n=i.map((t=>t===l?a.Children.count(e)>1?a.Children.only(null):a.isValidElement(e)?e.props.children:null:t));return a.createElement(c,s(r)({},o,{ref:t}),a.isValidElement(e)?a.cloneElement(e,void 0,n):null)}return a.createElement(c,s(r)({},o,{ref:t}),n)}));l.displayName="Slot";const c=a.forwardRef(((e,t)=>{const{children:n,...r}=e;return a.isValidElement(n)?a.cloneElement(n,{...p(r,n.props),ref:t?o.composeRefs(t,n.ref):n.ref}):a.Children.count(n)>1?a.Children.only(null):null}));c.displayName="SlotClone";const u=e=>{let{children:t}=e;return a.createElement(a.Fragment,null,t)};function d(e){return a.isValidElement(e)&&e.type===u}function p(e,t){const n={...t};for(const r in t){const a=e[r],o=t[r];/^on[A-Z]/.test(r)?a&&o?n[r]=function(){o(...arguments),a(...arguments)}:a&&(n[r]=a):"style"===r?n[r]={...a,...o}:"className"===r&&(n[r]=[a,o].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],a=void 0!==e&&e!==n;return t.h.O||v("ES5").S(t,e,a),a?(n[Z].P&&(A(t),r(4)),o(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(a,o){return O(e,r,t,a,o,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 a=4===r.i||5===r.i?r.o=f(r.k):r.o,o=a,s=!1;3===r.i&&(o=new Set(a),a.clear(),s=!0),i(o,(function(t,o){return O(e,r,a,t,o,n,s)})),k(e,a,!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(a(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),!a(d))return;e.m=!1}else c&&n.add(i);if(o(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},a=r,o=J;n&&(a=[r],o=Q);var i=Proxy.revocable(a,o),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 a(e)||r(22,e),function e(t){if(!o(t))return t;var n,r=t[Z],a=s(t);if(r){if(!r.P&&(r.i<4||!v("ES5").K(r)))return r.t;r.I=!0,n=B(t,a),r.I=!1}else n=B(t,a);return i(n,(function(t,a){r&&c(r.t,t)===a||u(n,t,e(a))})),3===a?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=o[e];return n?n.enumerable=t:o[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 a=e[t][Z];if(!a.P)switch(a.i){case 5:r(a)&&M(a);break;case 4:n(a)&&M(a)}}}function n(e){for(var t=e.t,n=e.k,r=Y(n),a=r.length-1;a>=0;a--){var o=r[a];if(o!==Z){var i=t[o];if(void 0===i&&!l(t,o))return!0;var s=n[o],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,a=R(t,n);return a?"value"in a?a.value:null===(r=a.get)||void 0===r?void 0:r.call(e.k):void 0}(e,n,t);var r=n[t];return e.I||!o(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 a=N(m(e),t),o=null==a?void 0:a[Z];if(o&&o.t===n)return e.o[t]=n,e.R[t]=!1,!0;if(d(n,a)&&(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,a){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,a=Array(r>1?r-1:0),o=1;o1?r-1:0),o=1;o=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 o=v("Patches").$;return a(e)?o(e,t):this.produce(e,(function(e){return o(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 ae=n(77048);function oe(e){return function(t){var n=t.dispatch,r=t.getState;return function(t){return function(a){return"function"===typeof a?a(n,r,e):t(a)}}}}var ie=oe();ie.withExtraArgument=oe;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,a,o,i={label:0,sent:function(){if(1&a[0])throw a[1];return a[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"===typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;i;)try{if(n=1,r&&(a=2&o[0]?r.return:o[0]?r.throw||((a=r.return)&&a.call(r),0):r.next)&&!(a=a.call(r,o[1])).done)return a;switch(r=0,a&&(o=[2&o[0],a.value]),o[0]){case 0:case 1:a=o;break;case 4:return i.label++,{value:o[1],done:!1};case 5:i.label++,r=o[1],o=[0];continue;case 7:o=i.ops.pop(),i.trys.pop();continue;default:if(!(a=(a=i.trys).length>0&&a[a.length-1])&&(6===o[0]||2===o[0])){i=0;continue}if(3===o[0]&&(!a||o[1]>a[0]&&o[1]{"use strict";function r(){return r=Object.assign?Object.assign.bind():function(e){for(var t=1;td,Gh:()=>M,HS:()=>L,Oi:()=>s,Rr:()=>p,pX:()=>j,pb:()=>O,rc:()=>a,tH:()=>F,ue:()=>f,yD:()=>R,zR:()=>i}),function(e){e.Pop="POP",e.Push="PUSH",e.Replace="REPLACE"}(a||(a={}));const o="popstate";function i(e){return void 0===e&&(e={}),h((function(e,t){let{pathname:n,search:r,hash:a}=e.location;return u("",{pathname:n,search:r,hash:a},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,a){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||a||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=a.Pop,f=null,g=b();function b(){return(h.state||{idx:null}).idx}function y(){m=a.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(o,y),f=e,()=>{l.removeEventListener(o,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=a.Push;let r=u(E.location,e,t);n&&n(r,e),g=b()+1;let o=c(r,g),i=E.createHref(r);try{h.pushState(o,"",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=a.Replace;let r=u(E.location,e,t);n&&n(r,e),g=b();let o=c(r,g),i=E.createHref(r);h.replaceState(o,"",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){void 0===n&&(n="/");let r=O(("string"===typeof t?p(t):t).pathname||"/",n);if(null==r)return null;let a=g(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 o=null;for(let i=0;null==o&&i{let i={relativePath:void 0===o?e.path||"":o,caseSensitive:!0===e.caseSensitive,childrenIndex:a,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=L([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+'".'),g(e.children,t,c,l)),(null!=e.path||e.index)&&t.push({path:l,score:T(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 b(e.path))a(e,t,r);else a(e,t)})),t}function b(e){let t=e.split("/");if(0===t.length)return[];let[n,...r]=t,a=n.endsWith("?"),o=n.replace(/\?$/,"");if(0===r.length)return a?[o,""]:[o];let i=b(r.join("/")),s=[];return s.push(...i.map((e=>""===e?o:[o,e].join("/")))),a&&s.push(...i),s.map((t=>e.startsWith("/")&&""===t?"/":t))}const y=/^:[\w-]+$/,v=3,E=2,w=1,S=10,A=-2,_=e=>"*"===e;function T(e,t){let n=e.split("/"),r=n.length;return n.some(_)&&(r+=A),t&&(r+=E),n.filter((e=>!_(e))).reduce(((e,t)=>e+(y.test(t)?v:""===t?w:S)),r)}function C(e,t){let{routesMeta:n}=e,r={},a="/",o=[];for(let i=0;i(r.push({paramName:t,isOptional:null!=n}),n?"/?([^\\/]+)?":"/([^\\/]+)")));e.endsWith("*")?(r.push({paramName:"*"}),a+="*"===e||"/*"===e?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?a+="\\/*$":""!==e&&"/"!==e&&(a+="(?:(?=\\/|$))");let o=new RegExp(a,t?void 0:"i");return[o,r]}(e.path,e.caseSensitive,e.end),a=t.match(n);if(!a)return null;let o=a[0],i=o.replace(/(.)\/+$/,"$1"),s=a.slice(1);return{params:r.reduce(((e,t,n)=>{let{paramName:r,isOptional:a}=t;if("*"===r){let e=s[n]||"";i=o.slice(0,o.length-e.length).replace(/(.)\/+$/,"$1")}const l=s[n];return e[r]=a&&!l?void 0:(l||"").replace(/%2F/g,"/"),e}),{}),pathname:o,pathnameBase:i,pattern:e}}function I(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 O(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 k(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 N(e){return e.filter(((e,t)=>0===t||e.route.path&&e.route.path.length>0))}function R(e,t){let n=N(e);return t?n.map(((t,n)=>n===e.length-1?t.pathname:t.pathnameBase)):n.map((e=>e.pathnameBase))}function M(e,t,n,a){let o;void 0===a&&(a=!1),"string"===typeof e?o=p(e):(o=r({},e),s(!o.pathname||!o.pathname.includes("?"),k("?","pathname","search",o)),s(!o.pathname||!o.pathname.includes("#"),k("#","pathname","hash",o)),s(!o.search||!o.search.includes("#"),k("#","search","hash",o)));let i,l=""===e||""===o.pathname,c=l?"/":o.pathname;if(null==c)i=n;else{let e=t.length-1;if(!a&&c.startsWith("..")){let t=c.split("/");for(;".."===t[0];)t.shift(),e-=1;o.pathname=t.join("/")}i=e>=0?t[e]:"/"}let u=function(e,t){void 0===t&&(t="/");let{pathname:n,search:r="",hash:a=""}="string"===typeof e?p(e):e,o=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:o,search:P(r),hash:B(a)}}(o,i),d=c&&"/"!==c&&c.endsWith("/"),h=(l||"."===c)&&n.endsWith("/");return u.pathname.endsWith("/")||!d&&!h||(u.pathname+="/"),u}const L=e=>e.join("/").replace(/\/\/+/g,"/"),D=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),P=e=>e&&"?"!==e?e.startsWith("?")?e:"?"+e:"",B=e=>e&&"#"!==e?e.startsWith("#")?e:"#"+e:"";class F extends Error{}function j(e){return null!=e&&"number"===typeof e.status&&"string"===typeof e.statusText&&"boolean"===typeof e.internal&&"data"in e}const z=["post","put","patch","delete"],U=(new Set(z),["get",...z]);new Set(U),new Set([301,302,303,307,308]),new Set([307,308]);Symbol("deferred")},12028:(e,t,n)=>{"use strict";var r=n(60002),a=n(61712),o=a(r("String.prototype.indexOf"));e.exports=function(e,t){var n=r(e,!!t);return"function"===typeof n&&o(e,".prototype.")>-1?a(n):n}},61712:(e,t,n)=>{"use strict";var r=n(63864),a=n(60002),o=n(75438),i=n(54902),s=a("%Function.prototype.apply%"),l=a("%Function.prototype.call%"),c=a("%Reflect.apply%",!0)||r.call(l,s),u=n(82090),d=a("%Math.max%");e.exports=function(e){if("function"!==typeof e)throw new i("a function is required");var t=c(r,l,arguments);return o(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 a=0;a{"use strict";t.parse=function(e,t){if("string"!==typeof e)throw new TypeError("argument str must be a string");for(var r={},o=t||{},s=e.split(a),l=o.decode||n,c=0;c(s=(i=Math.ceil(p/g))>s?i+1:s+1)&&(o=s,r.length=1),r.reverse();o--;)r.push(0);r.reverse()}for((s=c.length)-(o=u.length)<0&&(o=s,r=u,u=c,c=r),n=0;o;)n=(c[--o]=c[o]+u[o]+n)/f|0,c[o]%=f;for(n&&(c.unshift(n),++a),s=c.length;0==c[--s];)c.pop();return t.d=c,t.e=a,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,a=e.length-1,o="",i=e[0];if(a>0){for(o+=i,t=1;te.e^o.s<0?1:-1;for(t=0,n=(r=o.d.length)<(a=e.d.length)?r:a;te.d[t]^o.s<0?1:-1;return r===a?0:r>a^o.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,a=r.precision,i=a+5;if(void 0===e)e=new r(10);else if((e=new r(e)).s<1||e.eq(o))throw Error(c+"NaN");if(n.s<1)throw Error(c+(n.s?"NaN":"-Infinity"));return n.eq(o)?new r(0):(l=!1,t=A(I(n,i),I(e,i),i),l=!0,k(t,a))},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,a=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),a)},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,a=this;if(void 0!==e&&e!==!!e&&1!==e&&0!==e)throw Error(u+e);if(t=T(a)+1,n=(r=a.d.length-1)*g+1,r=a.d[r]){for(;r%10==0;r/=10)n--;for(r=a.d[0];r>=10;r/=10)n++}return e&&t>n?t:n},v.squareRoot=v.sqrt=function(){var e,t,n,r,a,o,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==(a=Math.sqrt(+s))||a==1/0?(((t=S(s.d)).length+e)%2==0&&(t+="0"),a=Math.sqrt(t),e=p((e+1)/2)-(e<0||e%2),r=new u(t=a==1/0?"5e"+e:(t=a.toExponential()).slice(0,t.indexOf("e")+1)+e)):r=new u(a.toString()),a=i=(n=u.precision)+3;;)if(r=(o=r).plus(A(s,o,i+2)).times(.5),S(o.d).slice(0,i)===(t=S(r.d)).slice(0,i)){if(t=t.slice(i-3,i+1),a==i&&"4999"==t){if(k(o,n+1,0),o.times(o).eq(s)){r=o;break}}else if("9999"!=t)break;i+=4}return l=!0,k(r,n)},v.times=v.mul=function(e){var t,n,r,a,o,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)&&(o=h,h=m,m=o,i=c,c=u,u=i),o=[],r=i=c+u;r--;)o.push(0);for(r=u;--r>=0;){for(t=0,a=c+r;a>r;)s=o[a]+m[r]*h[a-r-1]+t,o[a--]=s%f|0,t=s/f|0;o[a]=(o[a]+t)%f|0}for(;!o[--i];)o.pop();return t?++n:o.shift(),e.d=o,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,a=r.constructor;return void 0===e?n=R(r,!0):(w(e,0,i),void 0===t?t=a.rounding:w(t,0,8),n=R(r=k(new a(r),e+1,t),!0,e+1)),n},v.toFixed=function(e,t){var n,r,a=this,o=a.constructor;return void 0===e?R(a):(w(e,0,i),void 0===t?t=o.rounding:w(t,0,8),n=R((r=k(new o(a),e+T(a)+1,t)).abs(),!1,e+T(r)+1),a.isneg()&&!a.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,a,i,s,u=this,d=u.constructor,h=+(e=new d(e));if(!e.s)return new d(o);if(!(u=new d(u)).s){if(e.s<1)throw Error(c+"Infinity");return u}if(u.eq(o))return u;if(r=d.precision,e.eq(o))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(a=new d(o),t=Math.ceil(r/g+4),l=!1;n%2&&M((a=a.times(u)).d,t),0!==(n=p(n/2));)M((u=u.times(u)).d,t);return l=!0,e.s<0?new d(o).div(a):k(a,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,a=e.times(I(u,r+12)),l=!0,(a=_(a)).s=i,a},v.toPrecision=function(e,t){var n,r,a=this,o=a.constructor;return void 0===e?r=R(a,(n=T(a))<=o.toExpNeg||n>=o.toExpPos):(w(e,1,i),void 0===t?t=o.rounding:w(t,0,8),r=R(a=k(new o(a),e,t),e<=(n=T(a))||n<=o.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,a=e.length;for(e=e.slice();a--;)n=e[a]*t+r,e[a]=n%f|0,r=n/f|0;return r&&e.unshift(r),e}function t(e,t,n,r){var a,o;if(n!=r)o=n>r?1:-1;else for(a=o=0;at[a]?1:-1;break}return o}function n(e,t,n){for(var r=0;n--;)e[n]-=r,r=e[n]1;)e.shift()}return function(r,a,o,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==a.s?1:-1,R=r.d,M=a.d;if(!r.s)return new O(r);if(!a.s)throw Error(c+"Division by zero");for(l=r.e-a.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==o?o=O.precision:i?o+(T(r)-T(a))+1:o)<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(o);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=a=new p(o),p.precision=s;;){if(r=k(r.times(e),s),n=n.times(++c),S((i=a.plus(A(r,n,s))).d).slice(0,s)===S(a.d).slice(0,s)){for(;u--;)a=k(a.times(a),s);return p.precision=m,null==t?(l=!0,k(a,m)):a}a=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,a,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(o))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(o),f.plus(o),p),h=k(f.times(f),p),a=3;;){if(s=k(s.times(h),p),S((d=u.plus(A(s,new b(a),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,a+=2}}function O(e,t){var n,r,a;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(a=t.length;48===t.charCodeAt(a-1);)--a;if(t=t.slice(r,a)){if(a-=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,a,o,i,s,c,u,m,b=e.d;for(i=1,o=b[0];o>=10;o/=10)i++;if((r=t-i)<0)r+=g,a=t,u=b[m=0];else{if((m=Math.ceil((r+1)/g))>=(o=b.length))return e;for(u=o=b[m],i=1;o>=10;o/=10)i++;a=(r%=g)-g+i}if(void 0!==n&&(s=u/(o=h(10,i-a-1))%10|0,c=t<0||void 0!==b[m+1]||u%o,c=n<4?(s||c)&&(0==n||n==(e.s<0?3:2)):s>5||5==s&&(4==n||c||6==n&&(r>0?a>0?u/h(10,i-a):0:b[m-1])%10&1||n==(e.s<0?8:7))),t<1||!b[0])return c?(o=T(e),b.length=1,t=t-o-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,o=1,m--):(b.length=m+1,o=h(10,g-r),b[m]=a>0?(u/h(10,i-a)%h(10,a)|0)*o:0),c)for(;;){if(0==m){(b[0]+=o)==f&&(b[0]=1,++e.e);break}if(b[m]+=o,b[m]!=f)break;b[m--]=0,o=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,a,o,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>(a=Math.max(Math.ceil(m/g),s)+2)&&(i=a,n.length=1),n.reverse(),a=i;a--;)n.push(0);n.reverse()}else{for((d=(a=c.length)<(s=p.length))&&(s=a),a=0;a0;--a)c[s++]=0;for(a=p.length;a>i;){if(c[--a]0?o=o.charAt(0)+"."+o.slice(1)+x(r):i>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(a<0?"e":"e+")+a):a<0?(o="0."+x(-a-1)+o,n&&(r=n-i)>0&&(o+=x(r))):a>=i?(o+=x(a+1-i),n&&(r=n-a-1)>0&&(o=o+"."+x(r))):((r=a+1)0&&(a+1===i&&(o+="."),o+=x(r))),e.s<0?"-"+o:o}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,a=["precision",1,i,"rounding",0,8,"toExpNeg",-1/0,0,"toExpPos",0,1/0];for(t=0;t=a[t+1]&&r<=a[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,a;function o(e){var t=this;if(!(t instanceof o))return new o(e);if(t.constructor=o,e instanceof o)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(o.prototype=v,o.ROUND_UP=0,o.ROUND_DOWN=1,o.ROUND_CEIL=2,o.ROUND_FLOOR=3,o.ROUND_HALF_UP=4,o.ROUND_HALF_DOWN=5,o.ROUND_HALF_EVEN=6,o.ROUND_HALF_CEIL=7,o.ROUND_HALF_FLOOR=8,o.clone=e,o.config=o.set=L,void 0===t&&(t={}),t)for(a=["precision","rounding","toExpNeg","toExpPos","LN10"],n=0;n{"use strict";var r=n(82090),a=n(62557),o=n(54902),i=n(95558);e.exports=function(e,t,n){if(!e||"object"!==typeof e&&"function"!==typeof e)throw new o("`obj` must be an object or a function`");if("string"!==typeof t&&"symbol"!==typeof t)throw new o("`property` must be a string or a symbol`");if(arguments.length>3&&"boolean"!==typeof arguments[3]&&null!==arguments[3])throw new o("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&"boolean"!==typeof arguments[4]&&null!==arguments[4])throw new o("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&"boolean"!==typeof arguments[5]&&null!==arguments[5])throw new o("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&"boolean"!==typeof arguments[6])throw new o("`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 a("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(a){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 a(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function o(e,t,r,o,i){if("function"!==typeof r)throw new TypeError("The listener must be a function");var s=new a(r,o||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,a=[];if(0===this._eventsCount)return a;for(r in e=this._events)t.call(e,r)&&a.push(n?r.slice(1):r);return Object.getOwnPropertySymbols?a.concat(Object.getOwnPropertySymbols(e)):a},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 a=0,o=r.length,i=new Array(o);a{"use strict";var t=Object.prototype.hasOwnProperty,n=Object.prototype.toString,r=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=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,a=t.call(e,"constructor"),o=e.constructor&&e.constructor.prototype&&t.call(e.constructor.prototype,"isPrototypeOf");if(e.constructor&&!a&&!o)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(a)return a(e,n).value}return e[n]};e.exports=function e(){var t,n,r,a,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[a],t[a],r))return!1;return!0}function d(e,t,n,r){var a=e.size===t.size;if(a&&e.size){var o={};e.forEach((function(e,i){if(a){var s=!1,l=0;t.forEach((function(t,a){s||o[l]||(s=n(i,a,r)&&n(e,t,r))&&(o[l]=!0),l++})),a=s}}))}return a}var p="_owner",h=Function.prototype.bind.call(Function.prototype.call,Object.prototype.hasOwnProperty);function m(e,t,r,a){var o=n(e),s=o.length;if(n(t).length!==s)return!1;if(s)for(var l=void 0;s-- >0;){if((l=o[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],a))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 a=e.size===t.size;if(a&&e.size){var o={};e.forEach((function(e){if(a){var i=!1,s=0;t.forEach((function(t){i||o[s]||(i=n(e,t,r))&&(o[s]=!0),s++})),a=i}}))}return a}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(a(e)&&a(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):o(e)||o(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=[],a=[];function o(){return{depthLimit:Number.MAX_SAFE_INTEGER,edgesLimit:Number.MAX_SAFE_INTEGER}}function i(e,t,n,i){var s;"undefined"===typeof i&&(i=o()),l(e,"",0,[],void 0,0,i);try{s=0===a.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,o){var i=Object.getOwnPropertyDescriptor(o,n);void 0!==i.get?i.configurable?(Object.defineProperty(o,n,{value:e}),r.push([o,n,t,i])):a.push([t,n,e]):(o[n]=e,r.push([o,n,t]))}function l(e,r,a,o,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&&a+1>u.edgesLimit)return void s(t,e,r,i);if(o.push(e),Array.isArray(e))for(d=0;dt?1:0}function u(e,t,n,i){"undefined"===typeof i&&(i=o());var s,l=d(e,"",0,[],void 0,0,i)||e;try{s=0===a.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,a,o,i,l,u,p){var h;if(u+=1,"object"===typeof e&&null!==e){for(h=0;hp.depthLimit)return void s(t,e,a,l);if("undefined"!==typeof p.edgesLimit&&o+1>p.edgesLimit)return void s(t,e,a,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 a=1/0;function o(e){return null==e?"":function(e){if("string"==typeof e)return e;let t=e+"";return"0"==t&&1/e==-a?"-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,a=null,o=1,s=null;if(i(e)||r(e))a=e,t=y(e),n=v(e);else{if(!f.call(e,"name"))throw new Error(h("name"));const r=e.name;if(a=r,f.call(e,"weight")&&(o=e.weight,o<=0))throw new Error(m(r));t=y(r),n=v(r),s=e.getFn}return{path:t,id:n,weight:o,src:a,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(o(p));else if(r(p)){a=!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 a=t.match(w).length;if(n.has(a))return n.get(a);const o=1/Math.pow(a,.5*e),i=parseFloat(Math.round(o*r)/r);return n.set(a,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 o=t.getFn?t.getFn(e):this.getFn(e,t.path);if(u(o))if(r(o)){let e=[];const t=[{nestedArrIndex:-1,value:o}];for(;t.length;){const{nestedArrIndex:n,value:a}=t.pop();if(u(a))if(i(a)&&!d(a)){let t={v:a,i:n,n:this.norm.get(a)};e.push(t)}else r(a)&&a.forEach(((e,n)=>{t.push({nestedArrIndex:n,value:e})}))}n.$[a]=e}else if(i(o)&&!d(o)){let e={v:o,n:this.norm.get(o)};n.$[a]=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 a=new S({getFn:n,fieldNormWeight:r});return a.setKeys(e.map(b)),a.setSources(t),a.create(),a}function _(e){let{errors:t=0,currentLocation:n=0,expectedLocation:r=0,distance:a=E.distance,ignoreLocation:o=E.ignoreLocation}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const i=t/e.length;if(o)return i;const s=Math.abs(r-n);return a?i+s/a:s?1:i}const T=32;function C(e,t,n){let{location:r=E.location,distance:a=E.distance,threshold:o=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=o,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:a,ignoreLocation:c});if(h=Math.min(e,h),m=b+u,f){let e=0;for(;e=s;i-=1){let r=i-1,o=n[e.charAt(r)];if(f&&(g[r]=+!!o),b[i]=(b[i+1]<<1|1)&o,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:a,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:a,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,a=-1,o=0;for(let i=e.length;o=t&&n.push([r,a]),r=-1)}return e[o-1]&&o-r>=t&&n.push([r,o-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:a,findAllMatches:o,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:a,threshold:o,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:a=E.includeMatches,findAllMatches:o=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:a,findAllMatches:o,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=[],a=this.pattern.length;for(;(t=e.indexOf(this.pattern,n))>-1;)n=t+a,r.push([t,n-1]);const o=!!r.length;return{isMatch:o,score:o?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:a=E.ignoreLocation,findAllMatches:o=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:o,ignoreLocation:a,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 a=0,o=n.length;a!(!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 a=e=>{let o=Object.keys(e);const s=(e=>!!e[H])(e);if(!s&&o.length>1&&!V(e))return a(q(e));if((e=>!r(e)&&c(e)&&!V(e))(e)){const r=s?e[H]:o[0],a=s?e[G]:e[r];if(!i(a))throw new Error((e=>"Invalid value for key ".concat(e))(r));const l={keyId:v(r),pattern:a};return n&&(l.searcher=j(a,t)),l}let l={children:[],operator:o[0]};return o.forEach((t=>{const n=e[t];r(n)&&n.forEach((e=>{l.children.push(a(e))}))})),l};return V(e)||(e=q(e)),a(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 a={indices:n,value:r};e.key&&(a.key=e.key.src),e.idx>-1&&(a.refIndex=e.idx),t.matches.push(a)}))}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:a,sortFn:o,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:a,score:o}=e;const i=r?r.weight:null;t*=Math.pow(0===o&&i?Number.EPSILON:o,(i||1)*(n?1:a))})),e.score=t}))}(c,{ignoreFieldNorm:l}),a&&c.sort(o),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 a=[];return n&&a.push(Z),r&&a.push($),e.map((e=>{const{idx:n}=e,r={item:t[n],refIndex:n};return a.length&&a.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:a,n:o}=e;if(!u(n))return;const{isMatch:i,score:s,indices:l}=t.searchIn(n);i&&r.push({item:n,idx:a,matches:[{score:s,value:n,norm:o,indices:l}]})})),r}_searchLogical(e){const t=W(e,this.options),n=(e,t,r)=>{if(!e.children){const{keyId:n,searcher:a}=e,o=this._findMatches({key:this._keyStore.get(n),value:this._myIndex.getValueForItemAtKeyId(t,n),searcher:a});return o&&o.length?[{idx:r,item:t,matches:o}]:[]}const a=[];for(let o=0,i=e.children.length;o{let{$:r,i:i}=e;if(u(r)){let e=n(t,r,i);e.length&&(a[i]||(a[i]={idx:i,item:r,matches:[]},o.push(a[i])),e.forEach((e=>{let{matches:t}=e;a[i].matches.push(...t)})))}})),o}_searchObjectList(e){const t=j(e,this.options),{keys:n,records:r}=this._myIndex,a=[];return r.forEach((e=>{let{$:r,i:o}=e;if(!u(r))return;let i=[];n.forEach(((e,n)=>{i.push(...this._findMatches({key:e,value:r[n],searcher:t}))})),i.length&&a.push({idx:o,item:r,matches:i})})),a}_findMatches(e){let{key:t,value:n,searcher:a}=e;if(!u(n))return[];let o=[];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}=a.searchIn(n);s&&o.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}=a.searchIn(e);i&&o.push({score:s,key:t,value:e,norm:r,indices:l})}return o}}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:a}=e,o=new S({getFn:t,fieldNormWeight:n});return o.setKeys(r),o.setIndexRecords(a),o},Y.config=E,Y.parseQuery=W,function(){F.push(...arguments)}(B)},60002:(e,t,n)=>{"use strict";var r,a=n(29304),o=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%":a,"%eval%":eval,"%EvalError%":o,"%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 a=e("%AsyncGenerator%");a&&y&&(n=y(a.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 a=w[r];if(a===v&&(a=A(r)),"undefined"===typeof a&&!t)throw new c("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:n,name:r,value:a}}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,a){r[r.length]=n?O(a,M,"$1"):t||e})),r}(e),r=n.length>0?n[0]:"",a=L("%"+r+"%",t),o=a.name,i=a.value,s=!1,u=a.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[o]=i)}}return i}},95558:(e,t,n)=>{"use strict";var r=n(60002)("%Object.getOwnPropertyDescriptor%",!0);if(r)try{r([],"length")}catch(a){r=null}e.exports=r},12101:(e,t,n)=>{"use strict";var r=n(82090),a=function(){return!!r};a.hasArrayLengthDefineBug=function(){if(!r)return null;try{return 1!==r([],"length",{value:1}).length}catch(e){return!0}},e.exports=a},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,a=n(99534);e.exports=function(){return"function"===typeof r&&("function"===typeof Symbol&&("symbol"===typeof r("foo")&&("symbol"===typeof Symbol("bar")&&a())))}},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 a=Object.getOwnPropertyDescriptor(e,t);if(42!==a.value||!0!==a.enumerable)return!1}return!0}},34384:(e,t,n)=>{"use strict";var r=Function.prototype.call,a=Object.prototype.hasOwnProperty,o=n(63864);e.exports=o.call(r,a)},80219:(e,t,n)=>{"use strict";var r=n(53763),a={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},o={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]||a}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 a=h(n);a&&a!==m&&e(t,a,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,a=n?Symbol.for("react.portal"):60106,o=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 o: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 a: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=o,t.Lazy=g,t.Memo=f,t.Portal=a,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)===o},t.isLazy=function(e){return w(e)===g},t.isMemo=function(e){return w(e)===f},t.isPortal=function(e){return w(e)===a},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===o||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*/,a=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,o=/^:\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(a);if(n){if(w(),!y(o))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]}),a=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=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 a(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=o(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,a=n.options,o=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=a.toggleShortcut||"$mod+k",o=(0,l.default)(window,((e={})[n]=function(e){var t,n,o,s;e.defaultPrevented||(e.preventDefault(),r.toggle(),i?null===(n=null===(t=a.callbacks)||void 0===t?void 0:t.onClose)||void 0===n||n.call(t):null===(s=null===(o=a.callbacks)||void 0===o?void 0:o.onOpen)||void 0===s||s.call(o))},e.Escape=function(e){var n,r;i&&(e.stopPropagation(),e.preventDefault(),null===(r=null===(n=a.callbacks)||void 0===n?void 0:n.onClose)||void 0===r||r.call(n)),t()},e));return function(){o()}}t()}),[a.callbacks,a.toggleShortcut,r,i,d]);var p=s.useRef(),h=s.useCallback((function(e){var t,n,o=0;e===c.VisualState.animatingIn&&(o=(null===(t=a.animations)||void 0===t?void 0:t.enterMs)||0),e===c.VisualState.animatingOut&&(o=(null===(n=a.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)}),o)}),[null===(e=a.animations)||void 0===e?void 0:e.enterMs,null===(t=a.animations)||void 0===t?void 0:t.exitMs,r]);s.useEffect((function(){switch(o){case c.VisualState.animatingIn:case c.VisualState.animatingOut:h(o)}}),[h,o])}(),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,a=e.options,o=e.disabled;s.useEffect((function(){var e;if(!r&&!o){for(var i=[],s=0,c=Object.keys(t).map((function(e){return t[e]}));s0?e-1:e;if("string"===typeof a.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 a=t.history;a&&(n.historyItem&&a.remove(n.historyItem),n.historyItem=a.add({perform:e.perform,negate:r}),n.history={undo:function(){return a.undo(n.historyItem)},redo:function(){return a.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),a=function(){function e(e){this.perform=e.perform,this.negate=e.negate}return e.create=function(t){return new e(t)},e}();t.HistoryItemImpl=a;var o=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 a=null===(n=t.key)||void 0===n?void 0:n.toLowerCase();t.metaKey&&"z"===a&&t.shiftKey?e.redo():t.metaKey&&"z"===a&&e.undo()}}))},e.prototype.add=function(e){var t=a.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=o,Object.freeze(o)},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]}),a=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}),a(n(12588),t),a(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]}),a=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 o=n(40847);Object.defineProperty(t,"createAction",{enumerable:!0,get:function(){return o.createAction}}),Object.defineProperty(t,"Priority",{enumerable:!0,get:function(){return o.Priority}}),a(n(40388),t),a(n(31780),t),a(n(49042),t),a(n(53334),t),a(n(48474),t),a(n(81223),t),a(n(49669),t),a(n(63942),t),a(n(35583),t),a(n(75955),t),a(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 a(e,t){return"function"===typeof e.getModifierState&&e.getModifierState(t)}t.default=function(e,t,o){var i,s;void 0===o&&(o={});var l=null!==(i=o.timeout)&&void 0!==i?i:1e3,c=null!==(s=o.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],o=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!a(e,t)}))||n.find((function(n){return!t[0].includes(n)&&t[1]!==n&&a(e,n)})))}(e,l);c?s.length>1?d.set(r,s.slice(1)):(d.delete(r),o(e)):a(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 o=n[a].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)),a=i(n(53091)),o=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 a.default:new o.default,t.Ay=s,r.default,a.default,o.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 o("localStorage");if("session"===t)return o("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),a="__test";function o(e){try{var t=window[e];return t.setItem(a,"1"),t.removeItem(a),!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),a=n(25051),o=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),a=n(29935),o=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),a=n(37159),o=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),a=n(86179),o=n(46704);function i(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new r;++t{var r=n(97160),a=n(84545),o=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=a,c.prototype.delete=o,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,a=0,o=[];++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,a=null==e?0:e.length;++r{var r=n(3343),a=n(22777),o=n(54052),i=n(44543),s=n(69194),l=n(51268),c=Object.prototype.hasOwnProperty;e.exports=function(e,t){var n=o(e),u=!n&&a(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,a=Array(r);++n{e.exports=function(e,t){for(var n=-1,r=t.length,a=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),a=n(76516)(r);e.exports=a},24746:(e,t,n)=>{var r=n(45652);e.exports=function(e,t){var n=!0;return r(e,(function(e,r,a){return n=!!t(e,r,a)})),n}},79742:(e,t,n)=>{var r=n(19841);e.exports=function(e,t,n){for(var a=-1,o=e.length;++a{e.exports=function(e,t,n,r){for(var a=e.length,o=n+(r?1:-1);r?o--:++o{var r=n(48895),a=n(77116);e.exports=function e(t,n,o,i,s){var l=-1,c=t.length;for(o||(o=a),s||(s=[]);++l0&&o(u)?n>1?e(u,n-1,o,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),a=n(28673);e.exports=function(e,t){return e&&r(e,t,a)}},52969:(e,t,n)=>{var r=n(35324),a=n(70914);e.exports=function(e,t){for(var n=0,o=(t=r(t,e)).length;null!=e&&n{var r=n(48895),a=n(54052);e.exports=function(e,t,n){var o=t(e);return a(e)?o:r(o,n(e))}},16913:(e,t,n)=>{var r=n(9812),a=n(34552),o=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)?a(e):o(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),a=n(40644),o=n(71639);e.exports=function(e,t,n){return t===t?o(e,t,n):r(e,a,n)}},15193:(e,t,n)=>{var r=n(16913),a=n(22761);e.exports=function(e){return a(e)&&"[object Arguments]"==r(e)}},26989:(e,t,n)=>{var r=n(16399),a=n(22761);e.exports=function e(t,n,o,i,s){return t===n||(null==t||null==n||!a(t)&&!a(n)?t!==t&&n!==n:r(t,n,o,i,e,s))}},16399:(e,t,n)=>{var r=n(5538),a=n(43668),o=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)?a(e,t,n,f,g,b):o(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),a=n(26989);e.exports=function(e,t,n,o){var i=n.length,s=i,l=!o;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),a=n(37857),o=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!(!o(e)||a(e))&&(r(e)?p:s).test(i(e))}},35428:(e,t,n)=>{var r=n(16913),a=n(56173),o=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 o(e)&&a(e.length)&&!!i[r(e)]}},9096:(e,t,n)=>{var r=n(39256),a=n(15029),o=n(33279),i=n(54052),s=n(63932);e.exports=function(e){return"function"==typeof e?e:null==e?o:"object"==typeof e?i(e)?a(e[0],e[1]):r(e):s(e)}},83713:(e,t,n)=>{var r=n(36140),a=n(61143),o=Object.prototype.hasOwnProperty;e.exports=function(e){if(!r(e))return a(e);var t=[];for(var n in Object(e))o.call(e,n)&&"constructor"!=n&&t.push(n);return t}},50061:e=>{e.exports=function(e,t){return e{var r=n(45652),a=n(6571);e.exports=function(e,t){var n=-1,o=a(e)?Array(e.length):[];return r(e,(function(e,r,a){o[++n]=t(e,r,a)})),o}},39256:(e,t,n)=>{var r=n(86532),a=n(23781),o=n(91310);e.exports=function(e){var t=a(e);return 1==t.length&&t[0][2]?o(t[0][0],t[0][1]):function(n){return n===e||r(n,e,t)}}},15029:(e,t,n)=>{var r=n(26989),a=n(33097),o=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=a(n,e);return void 0===i&&i===t?o(n,e):r(t,i,3)}}},12536:(e,t,n)=>{var r=n(50149),a=n(52969),o=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 a(t,1===e.length?e[0]:e)}:e})):[u];var p=-1;t=r(t,l(o));var h=i(e,(function(e,n,a){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,a,o){for(var i=-1,s=n(t((r-e)/(a||1)),0),l=Array(s);s--;)l[o?s:++i]=e,e+=a;return l}},55647:(e,t,n)=>{var r=n(33279),a=n(55636),o=n(46350);e.exports=function(e,t){return o(a(e,t,r),e+"")}},28325:(e,t,n)=>{var r=n(22541),a=n(5654),o=n(33279),i=a?function(e,t){return a(e,"toString",{configurable:!0,enumerable:!1,value:r(t),writable:!0})}:o;e.exports=i},53871:e=>{e.exports=function(e,t,n){var r=-1,a=e.length;t<0&&(t=-t>a?0:a+t),(n=n>a?a:n)<0&&(n+=a),a=t>n?0:n-t>>>0,t>>>=0;for(var o=Array(a);++r{var r=n(45652);e.exports=function(e,t){var n;return r(e,(function(e,r,a){return!(n=t(e,r,a))})),!!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),a=n(50149),o=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(o(t))return a(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),a=/^\s+/;e.exports=function(e){return e?e.slice(0,r(e)+1).replace(a,""):e}},47574:e=>{e.exports=function(e){return function(t){return e(t)}}},64416:(e,t,n)=>{var r=n(18902),a=n(75866),o=n(41558),i=n(58114),s=n(68182),l=n(52074);e.exports=function(e,t,n){var c=-1,u=a,d=e.length,p=!0,h=[],m=h;if(n)p=!1,u=o;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),a=n(62597),o=n(14079),i=n(41069);e.exports=function(e,t){return r(e)?e:a(e,t)?[e]:o(i(e))}},28189:(e,t,n)=>{var r=n(53871);e.exports=function(e,t,n){var a=e.length;return n=void 0===n?a:n,!t&&n>=a?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,a=null===e,o=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||a&&s&&c||!n&&c||!o)return 1;if(!a&&!i&&!u&&e{var r=n(16599);e.exports=function(e,t,n){for(var a=-1,o=e.criteria,i=t.criteria,s=o.length,l=n.length;++a=l?c:c*("desc"==n[a]?-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,a){if(null==n)return n;if(!r(n))return e(n,a);for(var o=n.length,i=t?o:-1,s=Object(n);(t?i--:++i{e.exports=function(e){return function(t,n,r){for(var a=-1,o=Object(t),i=r(t),s=i.length;s--;){var l=i[e?s:++a];if(!1===n(o[l],l,o))break}return t}}},35295:(e,t,n)=>{var r=n(28189),a=n(36311),o=n(39115),i=n(41069);e.exports=function(e){return function(t){t=i(t);var n=a(t)?o(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),a=n(6571),o=n(28673);e.exports=function(e){return function(t,n,i){var s=Object(t);if(!a(t)){var l=r(n,3);t=o(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),a=n(60929),o=n(37303);e.exports=function(e){return function(t,n,i){return i&&"number"!=typeof i&&a(t,n,i)&&(n=i=void 0),t=o(t),void 0===n?(n=t,t=0):n=o(n),i=void 0===i?t{var r=n(72070),a=n(75713),o=n(52074),i=r&&1/o(new r([,-0]))[1]==1/0?function(e){return new r(e)}:a;e.exports=i},5654:(e,t,n)=>{var r=n(87937),a=function(){try{var e=r(Object,"defineProperty");return e({},"",{}),e}catch(t){}}();e.exports=a},43668:(e,t,n)=>{var r=n(18902),a=n(52587),o=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),a=n(22929),o=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 a(e),new a(t)));case"[object Boolean]":case"[object Date]":case"[object Number]":return o(+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),a=Object.prototype.hasOwnProperty;e.exports=function(e,t,n,o,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:a.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),a=n(69621),o=n(28673);e.exports=function(e){return r(e,o,a)}},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),a=n(28673);e.exports=function(e){for(var t=a(e),n=t.length;n--;){var o=t[n],i=e[o];t[n]=[o,i,r(i)]}return t}},87937:(e,t,n)=>{var r=n(36954),a=n(14657);e.exports=function(e,t){var n=a(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),a=Object.prototype,o=a.hasOwnProperty,i=a.toString,s=r?r.toStringTag:void 0;e.exports=function(e){var t=o.call(e,s),n=e[s];try{e[s]=void 0;var r=!0}catch(l){}var a=i.call(e);return r&&(t?e[s]=n:delete e[s]),a}},69621:(e,t,n)=>{var r=n(17529),a=n(57828),o=Object.prototype.propertyIsEnumerable,i=Object.getOwnPropertySymbols,s=i?function(e){return null==e?[]:(e=Object(e),r(i(e),(function(t){return o.call(e,t)})))}:a;e.exports=s},26924:(e,t,n)=>{var r=n(97685),a=n(85204),o=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(a),b=c(o),y=c(i),v=c(s),E=l;(r&&E(new r(new ArrayBuffer(1)))!=m||a&&E(new a)!=u||o&&E(o.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),a=n(22777),o=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),a=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 a.call(t,e)?t[e]:void 0}},48734:(e,t,n)=>{var r=n(95575),a=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;return r?void 0!==t[e]:a.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),a=n(22777),o=n(54052),i=r?r.isConcatSpreadable:void 0;e.exports=function(e){return o(e)||a(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),a=n(6571),o=n(69194),i=n(46686);e.exports=function(e,t,n){if(!i(n))return!1;var s=typeof t;return!!("number"==s?a(n)&&o(t,n.length):"string"==s&&t in n)&&r(n[t],e)}},62597:(e,t,n)=>{var r=n(54052),a=n(19841),o=/\.|\[(?:[^[\]]*|(["'])(?:(?!\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&&!a(e))||(i.test(e)||!o.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),a=function(){var e=/[^.]+$/.exec(r&&r.keys&&r.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();e.exports=function(e){return!!a&&a 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),a=Array.prototype.splice;e.exports=function(e){var t=this.__data__,n=r(t,e);return!(n<0)&&(n==t.length-1?t.pop():a.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__,a=r(n,e);return a<0?(++this.size,n.push([e,t])):n[a][1]=t,this}},47251:(e,t,n)=>{var r=n(98724),a=n(97160),o=n(85204);e.exports=function(){this.size=0,this.__data__={hash:new r,map:new(o||a),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),a=n.size;return n.set(e,t),this.size+=n.size==a?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),a=t&&!t.nodeType&&t,o=a&&e&&!e.nodeType&&e,i=o&&o.exports===a&&r.process,s=function(){try{var e=o&&o.require&&o.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),a=Math.max;e.exports=function(e,t,n){return t=a(void 0===t?e.length-1:t,0),function(){for(var o=arguments,i=-1,s=a(o.length-t,0),l=Array(s);++i{var r=n(37105),a="object"==typeof self&&self&&self.Object===Object&&self,o=r||a||Function("return this")();e.exports=o},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),a=n(86578)(r);e.exports=a},86578:e=>{var t=Date.now;e.exports=function(e){var n=0,r=0;return function(){var a=t(),o=16-(a-r);if(r=a,o>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),a=n(85204),o=n(64816);e.exports=function(e,t){var n=this.__data__;if(n instanceof r){var i=n.__data__;if(!a||i.length<199)return i.push([e,t]),this.size=++n.size,this;n=this.__data__=new o(i)}return n.set(e,t),this.size=n.size,this}},71639:e=>{e.exports=function(e,t,n){for(var r=n-1,a=e.length;++r{var r=n(45967),a=n(36311),o=n(50715);e.exports=function(e){return a(e)?o(e):r(e)}},14079:(e,t,n)=>{var r=n(88259),a=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,o=/\\(\\)?/g,i=r((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(a,(function(e,n,r,a){t.push(r?a.replace(o,"$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]",a="\\ud83c[\\udffb-\\udfff]",o="[^"+t+"]",i="(?:\\ud83c[\\udde6-\\uddff]){2}",s="[\\ud800-\\udbff][\\udc00-\\udfff]",l="(?:"+r+"|"+a+")"+"?",c="[\\ufe0e\\ufe0f]?",u=c+l+("(?:\\u200d(?:"+[o,i,s].join("|")+")"+c+l+")*"),d="(?:"+[o+r+"?",r,i,s,n].join("|")+")",p=RegExp(a+"(?="+a+")|"+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),a=n(4757),o=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=a();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=a(),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=o(t)||0,r(n)&&(f=!!n.leading,u=(g="maxWait"in n)?i(o(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(a())},S}},93211:e=>{e.exports=function(e,t){return e===t||e!==e&&t!==t}},17002:(e,t,n)=>{var r=n(27676),a=n(24746),o=n(9096),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))}},98990:(e,t,n)=>{var r=n(69995)(n(32520));e.exports=r},32520:(e,t,n)=>{var r=n(75816),a=n(9096),o=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:o(n);return l<0&&(l=i(s+l,0)),r(e,a(t,3),l)}},63538:(e,t,n)=>{var r=n(80755),a=n(33411);e.exports=function(e,t){return r(a(e,t),1)}},33097:(e,t,n)=>{var r=n(52969);e.exports=function(e,t,n){var a=null==e?void 0:r(e,t);return void 0===a?n:a}},53366:(e,t,n)=>{var r=n(27894),a=n(99057);e.exports=function(e,t){return null!=e&&a(e,t,r)}},33279:e=>{e.exports=function(e){return e}},22777:(e,t,n)=>{var r=n(15193),a=n(22761),o=Object.prototype,i=o.hasOwnProperty,s=o.propertyIsEnumerable,l=r(function(){return arguments}())?r:function(e){return a(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),a=n(56173);e.exports=function(e){return null!=e&&a(e.length)&&!r(e)}},96361:(e,t,n)=>{var r=n(16913),a=n(22761);e.exports=function(e){return!0===e||!1===e||a(e)&&"[object Boolean]"==r(e)}},44543:(e,t,n)=>{e=n.nmd(e);var r=n(56552),a=n(60014),o=t&&!t.nodeType&&t,i=o&&e&&!e.nodeType&&e,s=i&&i.exports===o?r.Buffer:void 0,l=(s?s.isBuffer:void 0)||a;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),a=n(46686);e.exports=function(e){if(!a(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),a=n(22761);e.exports=function(e){return"number"==typeof e||a(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),a=n(85990),o=n(22761),i=Function.prototype,s=Object.prototype,l=i.toString,c=s.hasOwnProperty,u=l.call(Object);e.exports=function(e){if(!o(e)||"[object Object]"!=r(e))return!1;var t=a(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),a=n(54052),o=n(22761);e.exports=function(e){return"string"==typeof e||!a(e)&&o(e)&&"[object String]"==r(e)}},19841:(e,t,n)=>{var r=n(16913),a=n(22761);e.exports=function(e){return"symbol"==typeof e||a(e)&&"[object Symbol]"==r(e)}},51268:(e,t,n)=>{var r=n(35428),a=n(47574),o=n(56832),i=o&&o.isTypedArray,s=i?a(i):r;e.exports=s},28673:(e,t,n)=>{var r=n(73204),a=n(83713),o=n(6571);e.exports=function(e){return o(e)?r(e):a(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),a=n(9096),o=n(38883),i=n(54052);e.exports=function(e,t){return(i(e)?r:o)(e,a(t,3))}},91733:(e,t,n)=>{var r=n(71775),a=n(94664),o=n(9096);e.exports=function(e,t){var n={};return t=o(t,3),a(e,(function(e,a,o){r(n,a,t(e,a,o))})),n}},50539:(e,t,n)=>{var r=n(79742),a=n(97498),o=n(33279);e.exports=function(e){return e&&e.length?r(e,o,a):void 0}},22794:(e,t,n)=>{var r=n(79742),a=n(97498),o=n(9096);e.exports=function(e,t){return e&&e.length?r(e,o(t,2),a):void 0}},15797:(e,t,n)=>{var r=n(64816);function a(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");var n=function(){var r=arguments,a=t?t.apply(this,r):r[0],o=n.cache;if(o.has(a))return o.get(a);var i=e.apply(this,r);return n.cache=o.set(a,i)||o,i};return n.cache=new(a.Cache||r),n}a.Cache=r,e.exports=a},76745:(e,t,n)=>{var r=n(79742),a=n(50061),o=n(33279);e.exports=function(e){return e&&e.length?r(e,o,a):void 0}},59364:(e,t,n)=>{var r=n(79742),a=n(9096),o=n(50061);e.exports=function(e,t){return e&&e.length?r(e,a(t,2),o):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),a=n(52866),o=n(62597),i=n(70914);e.exports=function(e){return o(e)?r(i(e)):a(e)}},96604:(e,t,n)=>{var r=n(3331)();e.exports=r},24597:(e,t,n)=>{var r=n(52587),a=n(9096),o=n(22165),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))}},87424:(e,t,n)=>{var r=n(80755),a=n(12536),o=n(55647),i=n(60929),s=o((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]]),a(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),a=n(46686);e.exports=function(e,t,n){var o=!0,i=!0;if("function"!=typeof e)throw new TypeError("Expected a function");return a(n)&&(o="leading"in n?!!n.leading:o,i="trailing"in n?!!n.trailing:i),r(e,t,{leading:o,maxWait:t,trailing:i})}},37303:(e,t,n)=>{var r=n(40801),a=1/0;e.exports=function(e){return e?(e=r(e))===a||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),a=n(46686),o=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(o(e))return NaN;if(a(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=a(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),a=n(64416);e.exports=function(e,t){return e&&e.length?a(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:()=>ho,$5j:()=>uL,$R7:()=>Go,$iK:()=>BM,$nd:()=>hr,$rg:()=>Lo,$vN:()=>vs,BFY:()=>gL,BIu:()=>hp,BK0:()=>ks,BYM:()=>kT,BlH:()=>Po,C1y:()=>ml,CB9:()=>Di,CTc:()=>ls,Clq:()=>Ks,D0K:()=>ps,DGR:()=>qo,DUd:()=>QM,Dk$:()=>us,DtA:()=>_s,DzZ:()=>Sl,EGL:()=>Jd,EO4:()=>Vi,ESy:()=>Yo,EmB:()=>Hp,EsX:()=>PM,Exy:()=>rC,F7$:()=>Ai,F7U:()=>Bo,FRZ:()=>oL,FUY:()=>qs,FZk:()=>Xs,Fjq:()=>Zi,Fwq:()=>hs,GQ2:()=>io,GTC:()=>Gr,Gg5:()=>Gs,HKb:()=>yo,Hbc:()=>rp,Hch:()=>ys,Hjg:()=>EL,IN:()=>Oo,ITz:()=>rL,J2s:()=>Eo,J2w:()=>Eh,J3j:()=>lp,JHI:()=>Vs,JMY:()=>is,JMb:()=>Fo,JUN:()=>Vo,JrA:()=>Zs,K0:()=>Gl,K8y:()=>Wa,KKE:()=>RM,KLX:()=>Ko,KPq:()=>si,Kiw:()=>Do,KlI:()=>pL,Kmb:()=>Hi,LPG:()=>Ol,M3H:()=>li,MZJ:()=>gl,Mxu:()=>op,NBP:()=>Ka,NTw:()=>Wo,Nmx:()=>ss,No_:()=>jo,ODz:()=>Es,OFF:()=>Ns,Owo:()=>zo,P1T:()=>Hs,P3Z:()=>Ss,PI5:()=>Mi,PPm:()=>WM,PcO:()=>YM,Pq3:()=>bl,QrX:()=>Qa,QvW:()=>nL,R$W:()=>Ji,REV:()=>di,RJ2:()=>Ni,ROG:()=>Us,RYV:()=>Al,Sc0:()=>Ul,Sdx:()=>_o,Smc:()=>bp,SxS:()=>GT,Sxe:()=>Ki,TFC:()=>Ms,TdU:()=>ei,Tir:()=>El,Ubg:()=>Yi,UfX:()=>lo,Uh:()=>Io,Uom:()=>KM,UtR:()=>ti,V7x:()=>Dl,VDx:()=>Oi,VJE:()=>es,VSs:()=>iL,Vep:()=>CM,Vey:()=>Mp,VgG:()=>Fi,W1t:()=>yh,W2Y:()=>ns,WBh:()=>ts,WC:()=>ri,WIv:()=>ao,WJF:()=>Wi,WN0:()=>Qo,WSU:()=>qi,WXN:()=>uo,Wei:()=>cC,Wh8:()=>Jo,XAi:()=>ms,XC7:()=>_l,XIK:()=>mL,XWb:()=>go,XjC:()=>MM,Xk0:()=>kM,YGH:()=>el,YI8:()=>NM,YJK:()=>eL,YMI:()=>UM,YPx:()=>gi,YXz:()=>Li,YkU:()=>as,Z3O:()=>xs,ZZX:()=>Ei,Zes:()=>os,ZfC:()=>Js,Zui:()=>FM,_0O:()=>Bs,_FR:()=>po,_kf:()=>ul,_tF:()=>To,_xt:()=>np,aHM:()=>Da,aJN:()=>xi,aL$:()=>mo,aaC:()=>Za,azJ:()=>Cd,b1c:()=>dl,bM2:()=>tL,bQt:()=>Kd,bWx:()=>js,b_$:()=>$o,bdq:()=>xM,bqg:()=>ui,brV:()=>Qi,c2u:()=>Si,cGQ:()=>Ds,cJw:()=>oo,cNv:()=>qT,cl_:()=>dp,cpY:()=>LM,cyn:()=>xo,d7y:()=>ko,dLE:()=>zi,dOG:()=>Op,dwU:()=>bo,e8j:()=>_M,eXQ:()=>$a,ehx:()=>vo,evq:()=>As,fAn:()=>Bi,fJb:()=>ci,fNY:()=>Xa,fRK:()=>Zo,fYD:()=>Qs,fiF:()=>vl,flY:()=>Co,fmr:()=>Gi,g7G:()=>Xo,gn6:()=>ws,gwF:()=>pi,hFj:()=>qp,hQD:()=>vi,hwo:()=>ni,iv:()=>ro,j1U:()=>gs,j6H:()=>_i,jCy:()=>dL,jG:()=>Ho,jJ3:()=>So,jT8:()=>tC,j_m:()=>lL,jcB:()=>No,jm5:()=>hi,kCK:()=>vp,kH5:()=>dr,kQt:()=>Ao,ke_:()=>zM,kez:()=>cL,kfP:()=>VM,l1Y:()=>Bl,l6P:()=>Pp,l7M:()=>HM,lD6:()=>ai,lVp:()=>ep,lcx:()=>wp,lgW:()=>$s,liv:()=>to,loI:()=>fl,lwR:()=>ji,mSu:()=>Tl,mZW:()=>PT,m_M:()=>qa,mo0:()=>Fs,mzI:()=>Ja,n$X:()=>wi,nA6:()=>yL,nD3:()=>JT,nDF:()=>Pi,nLN:()=>XM,nTF:()=>TM,nag:()=>eo,ndn:()=>Sa,ngX:()=>_p,nhF:()=>jM,nhX:()=>Cs,nmC:()=>i,nwl:()=>rs,o4l:()=>$i,oPe:()=>GM,oVU:()=>ii,osr:()=>Xi,pHQ:()=>fo,pj3:()=>bs,qI7:()=>Os,qM2:()=>ZM,qUP:()=>no,qYV:()=>Ps,qb_:()=>$T,qm4:()=>yl,r3Q:()=>zs,rBG:()=>wl,rXL:()=>Ls,rgY:()=>Is,rod:()=>ds,s3U:()=>ki,s5I:()=>yi,sJx:()=>OM,sQ4:()=>sC,sjq:()=>tl,t1M:()=>so,t53:()=>LT,t6I:()=>fi,tUM:()=>Th,tec:()=>cs,uFi:()=>Ci,uMc:()=>oi,uYH:()=>co,ucK:()=>Ii,uwE:()=>Ys,v5p:()=>DM,vhL:()=>Ya,vmc:()=>Il,vwO:()=>RT,wD7:()=>Ti,wKj:()=>Ri,wNL:()=>Ro,wPu:()=>JM,w_U:()=>IM,wb9:()=>Mo,wm6:()=>Ge,wql:()=>qM,xA9:()=>qr,xLb:()=>Ts,xTG:()=>wo,xWY:()=>Ui,xhy:()=>Uo,xul:()=>Fr,y$O:()=>mi,yEV:()=>aL,yTC:()=>$M,z21:()=>UT,z6M:()=>zp,z8D:()=>Rs,z9t:()=>sL,zEc:()=>bi,zYs:()=>za});var r=n(65043),a=n(94574),o=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",ae="#ffaa00",oe="#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:oe,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:ae},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,o=e.children,i=e.customTheme,s=n?He:Ue;return i&&(s=i),r.createElement(a.NP,{theme:s},o)},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,a=void 0===n?"regular":n,o=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 o&&(g=r.createElement("span",{className:"buttonIcon"},o)),r.createElement(pr,Ve({onClick:l,disabled:c||!1,variant:a||"regular",iconLocation:s||"end",label:t||"",fullWidth:u||!1,collapseOnSmall:!!p,icon:g,parentChildren:h||null,className:"".concat(m||""," button-").concat(a)},f),r.createElement(r.Fragment,null,o&&"start"===s&&g,r.createElement("span",{className:"button-label"},h,h&&t?" ":"",t),o&&"end"===s&&g))},mr=a.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=a.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,a=void 0===n?"simple":n,o=e.inverse,i=e.onClick;switch(t){case"console":switch(a){case"standard":return r.createElement(fr,{inverse:!!o,onClick:i});case"enterprise":return r.createElement(br,{inverse:!!o,onClick:i});case"AGPL":return r.createElement(gr,{inverse:!!o,onClick:i});default:return r.createElement(Sr,{inverse:!!o,onClick:i})}case"directpv":return r.createElement(vr,{inverse:!!o,onClick:i});case"subnet":return r.createElement(wr,{inverse:!!o,onClick:i});case"kes":return r.createElement(Er,{inverse:!!o,onClick:i});case"operator":return r.createElement(yr,{inverse:!!o,onClick:i});case"subnetops":return r.createElement(Ar,{inverse:!!o,onClick:i});case"cloud":return r.createElement(_r,{inverse:!!o,onClick:i});case"releases":return r.createElement(Tr,{inverse:!!o,onClick:i});case"vmbroker":return r.createElement(Cr,{inverse:!!o,onClick:i});case"eureka":return"new"===a?r.createElement(xr,{inverse:!!o,onClick:i}):r.createElement(Ir,{inverse:!!o,onClick:i});case"kms":return r.createElement(Or,{inverse:!!o,onClick:i});case"loadbalancer":return r.createElement(kr,{inverse:!!o,onClick:i});case"index":return r.createElement(Nr,{inverse:!!o,onClick:i});case"cache":return r.createElement(Rr,{inverse:!!o,onClick:i});case"monitor":return r.createElement(Mr,{inverse:!!o,onClick:i});case"observe":return r.createElement(Lr,{inverse:!!o,onClick:i});case"missioncontrol":return r.createElement(Dr,{inverse:!!o,onClick:i});case"globalconsole":return r.createElement(Pr,{inverse:!!o,onClick:i});case"enterprise":return r.createElement(jr,{inverse:!!o,onClick:i});case"minio":switch(a){case"enterprise":return r.createElement(zr,{inverse:!!o,onClick:i});case"enterpriseos":return r.createElement(Ur,{inverse:!!o,onClick:i});case"enterpriseosvertical":return r.createElement(Hr,{inverse:!!o,onClick:i});default:return r.createElement(Fr,{onClick:i})}}},Vr=a.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,a){var o,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[a+1]&&(d="and (max-width: ".concat(Wn(i,n[a+1],0),"px)")),t=Ve(Ve({},t),((o={})["@media (min-width: ".concat(Wn(i,r,0),"px) ").concat(d)]={display:"none"},o))}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(a,o){function i(e){try{l(r.next(e))}catch(e){o(e)}}function s(e){try{l(r.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?a(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),a="iPad"===t||"MacIntel"===t&&n>0&&!window.MSStream;return{isIpad:a,isMobile:/android/i.test(e)||r||a,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 ea(e,t){if(e===t)return 0;const n=e;e.length>t.length&&(e=t,t=n);let r=e.length,a=t.length;for(;r>0&&e.charCodeAt(~-r)===t.charCodeAt(~-a);)r--,a--;let o,i=0;for(;ic?l>c?c+1:l:l>s?s+1:l;return c}function ta(e){return null!=e}const na=function(){let{mobileTiers:e=[0,15,30,60],desktopTiers:t=[0,15,30,60],override:n={},glContext:r,failIfMajorPerformanceCaveat:a=!1,benchmarksURL:o="https://unpkg.com/detect-gpu@5.0.38/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(o,"/").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,a)=>({device:a,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,a);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 a=e.createBuffer();e.bindBuffer(34962,a),e.bufferData(34962,new Float32Array([-1,-1,0,3,-1,0,-1,3,0]),35044);const o=e.getAttribLocation(r,"aPosition");e.vertexAttribPointer(o,3,5126,!1,0,0),e.enableVertexAttribArray(o),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(a),i.join("")}(e),a="801621810",o="8016218135",i="80162181161",s=(null==Kr?void 0:Kr.isIpad)?[["a7",i,12],["a8",o,15],["a8x",o,15],["a9",o,15],["a9x",o,15],["a10",o,15],["a10x",o,15],["a12",a,15],["a12x",a,15],["a12z",a,15],["a14",a,15],["m1",a,15]]:[["a7",i,12],["a8",o,12],["a9",o,15],["a10",o,15],["a11",a,15],["a12",a,15],["a13",a,15],["a14",a,15],["a15",a,15],["a16",a,15],["a17",a,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"),a=i[r]=null!==(t=i[r])&&void 0!==t?t:u(r);let o;try{o=yield a}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=o.filter((e=>{let[,t]=e;return t===d}));p.length||(p=o.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,ea(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,a=Math.abs(E-r);a{let[n=Number.MAX_VALUE,r]=e,[a=Number.MAX_VALUE,o]=t;return n===a?r-o:n-a}));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 ra,aa,oa,ia,sa,la,ca,ua,da,pa,ha,ma,fa,ga,ba,ya,va=n(84967),Ea=n(89671),wa=a.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)}})),Sa=function(e){var t=e.logoProps,n=e.form,a=e.formFooter,o=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(a,o){function i(e){try{l(r.next(e))}catch(e){o(e)}}function s(e){try{l(r.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?a(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,a,o,i={label:0,sent:function(){if(1&a[0])throw a[1];return a[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(s){return function(l){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;o&&(o=0,s[0]&&(i=0)),i;)try{if(n=1,r&&(a=2&s[0]?r.return:s[0]?r.throw||((a=r.return)&&a.call(r),0):r.next)&&!(a=a.call(r,s[1])).done)return a;switch(r=0,a&&(s=[2&s[0],a.value]),s[0]){case 0:case 1:a=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(!((a=(a=i.trys).length>0&&a[a.length-1])||6!==s[0]&&2!==s[0])){i=0;continue}if(3===s[0]&&(!a||s[1]>a[0]&&s[1]=2),[2]}}))}))}),[]),r.createElement(wa,null,r.createElement(qr,{container:!0,className:"mainContainer",wrap:"nowrap"},r.createElement(qr,{item:!0,xs:"hidden",sm:"hidden",md:!0,className:"decorationPanel"},(o||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"},o))),r.createElement(qr,{item:!0,className:"videoContainer"},u&&l?r.createElement("video",{autoPlay:!0,playsInline:!0,muted:!0,loop:!0,disablePictureInPicture:!0,poster:Ea,className:"videoBG"},r.createElement("source",{src:va,type:"video/mp4"})):r.createElement("img",{src:Ea,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),a&&r.createElement(qr,{item:!0,xs:!0,className:"footer"},a))))))},Aa=(0,a.i7)(ra||(ra=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 }"]))),_a=(0,a.i7)(aa||(aa=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"]))),Ta=(0,a.i7)(oa||(oa=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"]))),Ca=(0,a.i7)(ia||(ia=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']))),xa=(0,a.i7)(sa||(sa=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']))),Ia=(0,a.i7)(la||(la=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']))),Oa=(0,a.i7)(ca||(ca=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']))),ka=(0,a.i7)(ua||(ua=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"]))),Na=(0,a.i7)(da||(da=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"]))),Ra=(0,a.i7)(pa||(pa=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 }"]))),Ma=(0,a.i7)(ha||(ha=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"]))),La=a.Ay.svg({width:40,height:40},(0,a.AH)(ma||(ma=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")}),Aa,_a,Ta,Ca,xa,Ia,Oa,ka,Na,Ra,Ma)),Da=function(e){return r.createElement(La,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"}))))},Pa=a.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)})),Ba=a.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"}}})),Fa=a.Ay.div((function(){return{display:"flex",justifyContent:"center",alignItems:"center",flexGrow:1,margin:"0 10px"}})),ja=a.Ay.div((function(){return{display:"flex",justifyContent:"flex-end",paddingRight:20,flexGrow:1,marginLeft:10,"& button":{marginLeft:8}}})),za=function(e){var t=e.label,n=e.middleComponent,a=e.actions,o=e.sx;return r.createElement(Pa,{sx:o,className:"page-header"},r.createElement(qr,{className:"page-header-label",item:!0,xs:12,sm:12,md:n?4:6},r.createElement(Ba,null,t)),n&&r.createElement(qr,{className:"page-header-middle",item:!0,xs:12,sm:12,md:4},r.createElement(Fa,null,n)),r.createElement(qr,{className:"page-header-actions",item:!0,xs:12,sm:12,md:n?4:6},r.createElement(ja,null,a)))},Ua=(0,a.i7)(fa||(fa=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"]))),Ha=a.Ay.span({display:"inline-flex",position:"relative"},(0,a.AH)(ga||(ga=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 "])),Ua)),Ga=a.Ay.div((function(e){var t=e.theme,n=e.placement,r="6px",a=Wn(t,"tooltip.background","#737373"),o=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:a})};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:a})};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:a})};break;default:i={transform:"translateX(-50%)","&::before":Ve(Ve({},s),{bottom:"100%",borderBottomColor:a})}}return Ve({position:"fixed",borderRadius:4,color:o,background:a,lineHeight:1,zIndex:10001,padding:8,fontSize:12,boxShadow:"#00000050 0px 3px 10px",maxWidth:350},i)})),Va=function(e){var t=e.placement,n=e.content,a=e.anchorEl,o={},i=t;if(a){var s=a.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":o={top:s.top+s.height+10,left:s.left+s.width/2};break;case"left":o={top:s.top+s.height/2,left:s.left-12};break;case"right":o={top:s.top+s.height/2,left:s.left+s.width+12};break;case"top":o={top:s.top-s.height/2-10,left:s.left+s.width/2}}}return r.createElement(Ga,{placement:i,style:o},n)},qa=function(e){var t=e.children,n=e.tooltip,a=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,a?(0,r.cloneElement)(t,Ve({},a)):t):r.createElement(r.Fragment,null,r.createElement(Ha,{onPointerEnter:function(e){u(e.currentTarget),h(!0)},onPointerLeave:function(){h(!1)}},a?(0,r.cloneElement)(t,Ve({},a)):t,p&&(0,o.createPortal)(r.createElement(Va,{placement:s,content:n,anchorEl:c}),document.body)))},Wa=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"}))},Za=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"})))},$a=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"}))))},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("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"}))))},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":"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})))},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",{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"})))},Ja=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"})))},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",{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"})))},eo=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"}))))},to=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"}))))},no=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"})))},ro=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"}))))},ao=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"})))},oo=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)"}))},io=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"})))},so=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"})))},lo=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"})))},co=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"}))))},uo=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"})))},po=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"})))},ho=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)"}))},mo=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"})))},fo=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"})))},go=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"})))},bo=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"}))))))},yo=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"})))},vo=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"})))},Eo=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"}))))},wo=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"})))},So=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"})))},Ao=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"}))))))},_o=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"})))},To=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"}))},Co=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"})))},xo=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"}))))},Io=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)"})))))},Oo=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"})))},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("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"})))},No=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"}))))))},Ro=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"})))},Mo=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"}))))},Lo=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"})))))},Do=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"}))))},Po=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"})))},Bo=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"}))))},Fo=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"}))))},jo=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"}))))},zo=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"})))))},Uo=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"})))},Ho=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"}))))},Go=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"})))},Vo=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"})))},qo=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"}))))},Wo=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"})))},Zo=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)"})))))},$o=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"})))))},Yo=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"}))},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("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"})))},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",{"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"})))},Jo=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"}))},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",{"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"}))))},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("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"})))},oi=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"})))},as=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)"}))},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("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({},e,{className:"min-icon",fill:"currentcolor",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 113.208 29.822"}),r.createElement("g",{transform:"translate(-1.655)"},r.createElement("path",{d:"M12.721-19.038A8.7,8.7,0,0,0,7.609-20.59c-2.992,0-5.427,1.532-5.427,4.27,0,2.424,1.866,3.51,4.209,3.794l1.319.162c2.211.274,3.4.9,3.4,2.221,0,1.6-1.664,2.465-3.783,2.465A7.586,7.586,0,0,1,2.7-9.25L1.726-7.83a9.2,9.2,0,0,0,5.6,1.846c3.073,0,5.64-1.481,5.64-4.311,0-2.505-2.059-3.479-4.463-3.773L7.254-14.22c-2.13-.264-3.215-.923-3.215-2.211,0-1.532,1.481-2.465,3.56-2.465a7.431,7.431,0,0,1,4.209,1.308Zm13.338-1.349H14.587v1.694h4.849V-6.187h1.785V-18.693h4.838Zm7.668,0H31.506l-5.772,14.2h1.856l1.552-3.875H36.03l1.562,3.875h1.917Zm-1.136,1.765,2.759,6.867H29.822Zm21.281-1.765H52.087V-9.24L43.5-20.4H41.883V-6.187h1.785l.01-11.147L52.259-6.176h1.613Zm4.047,0v14.2h5.417c4.585,0,7.526-2.779,7.526-7.1s-2.942-7.1-7.526-7.1Zm5.417,1.694c3.723,0,5.65,2.171,5.65,5.406,0,3.215-1.927,5.406-5.65,5.406H59.7V-18.693Zm16.686-1.694H77.8l-5.772,14.2h1.856l1.552-3.875h6.887l1.562,3.875H85.8Zm-1.136,1.765,2.759,6.867H76.117Zm9.291-1.765v14.2h1.785v-6.127h1.664L96.5-6.187h2.211l-5-6.127h.112c3.043,0,4.96-1.582,4.96-4.047,0-2.587-1.765-4.027-4.97-4.027Zm5.6,1.674c2.059,0,3.155.781,3.155,2.353,0,1.592-1.065,2.424-3.155,2.424H89.962v-4.777Zm8.165-1.674v14.2h5.417c4.585,0,7.526-2.779,7.526-7.1s-2.942-7.1-7.526-7.1Zm5.417,1.694c3.723,0,5.65,2.171,5.65,5.406,0,3.215-1.927,5.406-5.65,5.406h-3.631V-18.693Z",transform:"translate(-0.021 35.806)"}),r.createElement("path",{d:"M15.951.127h2.468V7.417H15.951Zm-2.993.1L7.949,3.288a.224.224,0,0,1-.233,0L2.707.228a.69.69,0,0,0-.359-.1H2.342a.688.688,0,0,0-.687.687V7.407H4.122V4.269a.247.247,0,0,1,.376-.21L7.305,5.777a.879.879,0,0,0,.9.009l2.963-1.738a.249.249,0,0,1,.246,0,.245.245,0,0,1,.125.212V7.406H14.01V.813a.686.686,0,0,0-.686-.687h-.006a.686.686,0,0,0-.359.1Zm17.769-.1h-2.5V3.445a.245.245,0,0,1-.12.211.248.248,0,0,1-.243.006L21.374.208a.693.693,0,0,0-.323-.08h0a.688.688,0,0,0-.687.687V7.409h2.483V4.094a.247.247,0,0,1,.362-.218L29.719,7.33a.686.686,0,0,0,.322.08h0a.688.688,0,0,0,.687-.687Zm1.941,7.289V.127h1.136V7.417Zm7.819.13c-3.056,0-5.223-1.449-5.223-3.773S37.447,0,40.488,0s5.236,1.449,5.236,3.774-2.141,3.773-5.236,3.773Zm0-6.58c-2.272,0-4.022.992-4.022,2.807s1.749,2.807,4.022,2.807,4.035-.979,4.035-2.807S42.761.967,40.488.967Z",transform:"translate(0)"})))},zs=function(e){return r.createElement("svg",Ve({},e,{className:"min-icon",fill:"currentcolor",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 121.755 28.546"}),r.createElement("g",{transform:"translate(-1.655)"},r.createElement("path",{d:"M12.537-8.4H4.594v-4.437h7.593v-1.612H4.594v-4.34H12.44v-1.6H2.886V-6.8h9.651ZM27.5-20.4H25.79V-9.725l-8.224-10.68H16.022V-6.8h1.709l.01-10.671,8.214,10.68H27.5Zm13.312,0H29.829v1.621H34.47V-6.8h1.709V-18.774h4.631ZM52.782-8.4H44.84v-4.437h7.593v-1.612H44.84v-4.34h7.845v-1.6H43.131V-6.8h9.651ZM56.268-20.4V-6.8h1.709v-5.865h1.592L64.239-6.8h2.117l-4.787-5.865h.107c2.913,0,4.748-1.515,4.748-3.874,0-2.476-1.689-3.855-4.758-3.855Zm5.36,1.6c1.971,0,3.02.748,3.02,2.253,0,1.524-1.019,2.321-3.02,2.321H57.977v-4.573ZM74.609-12.24c3.068,0,4.806-1.534,4.806-4.078S77.677-20.4,74.609-20.4H69.444V-6.8h1.709V-12.24Zm-.039-6.544c2.01,0,3.068.816,3.068,2.466s-1.058,2.466-3.068,2.466H71.153v-4.932ZM82.328-20.4V-6.8h1.709v-5.865h1.592L90.3-6.8h2.117l-4.787-5.865h.107c2.913,0,4.748-1.515,4.748-3.874,0-2.476-1.689-3.855-4.758-3.855Zm5.36,1.6c1.971,0,3.02.748,3.02,2.253,0,1.524-1.02,2.321-3.02,2.321H84.037v-4.573Zm9.525-1.6H95.5V-6.8h1.709ZM110.835-19.1a8.323,8.323,0,0,0-4.894-1.486c-2.864,0-5.195,1.466-5.195,4.088,0,2.321,1.787,3.359,4.029,3.631l1.262.155c2.117.262,3.253.864,3.253,2.126,0,1.534-1.592,2.359-3.622,2.359a7.261,7.261,0,0,1-4.428-1.5l-.932,1.359a8.808,8.808,0,0,0,5.36,1.767c2.942,0,5.4-1.418,5.4-4.127,0-2.4-1.971-3.33-4.272-3.612l-1.194-.146c-2.039-.252-3.078-.884-3.078-2.117,0-1.466,1.418-2.359,3.408-2.359a7.113,7.113,0,0,1,4.029,1.253ZM123.817-8.4h-7.942v-4.437h7.593v-1.612h-7.593v-4.34h7.845v-1.6h-9.554V-6.8h9.651Z",transform:"translate(-0.407 35.155)"}),r.createElement("path",{d:"M15.34.122H17.7V7.1H15.34Zm-2.865.1L7.68,3.147a.214.214,0,0,1-.223,0L2.662.218a.66.66,0,0,0-.344-.1H2.313a.659.659,0,0,0-.658.658V7.091H4.017v-3a.236.236,0,0,1,.36-.2L7.063,5.53a.841.841,0,0,0,.865.009l2.836-1.664a.239.239,0,0,1,.236,0,.234.234,0,0,1,.12.2V7.089h2.361V.778a.656.656,0,0,0-.657-.658h-.006a.656.656,0,0,0-.344.1Zm17.009-.1h-2.4V3.3a.234.234,0,0,1-.115.2.237.237,0,0,1-.232.006L20.531.2a.663.663,0,0,0-.309-.077h0a.659.659,0,0,0-.658.658V7.092h2.377V3.919a.236.236,0,0,1,.347-.208l6.235,3.307a.656.656,0,0,0,.308.077h0a.659.659,0,0,0,.658-.658ZM31.342,7.1V.122H32.43V7.1Zm7.485.125c-2.925,0-5-1.387-5-3.611S35.916,0,38.827,0,43.84,1.387,43.84,3.613s-2.05,3.611-5.012,3.611Zm0-6.3c-2.175,0-3.85.95-3.85,2.687S36.652,6.3,38.827,6.3s3.862-.937,3.862-2.687S41,.925,38.827.925Z",transform:"translate(0)"})))},Us=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor"},e,{viewBox:"0 0 117.104 38.414"}),r.createElement("g",{id:"ConsoleAGPLV3-Logo-License",transform:"translate(6804.003 4884.319)"},r.createElement("g",{id:"agpl-logo",transform:"translate(-6804.003 -4884.319)"},r.createElement("g",{id:"g2",transform:"translate(0 0)"},r.createElement("path",{id:"path1",d:"M111.872,1769.742l-8.188,35.724h79.124a7.037,7.037,0,0,1-5.3-2.53,5.366,5.366,0,0,1-.522-.89c-.094-.232-.183-.464-.272-.7a7.08,7.08,0,0,1-.287-2.464,17.963,17.963,0,0,1,3.281-8.475,45.721,45.721,0,0,1,9.041-9.865c.857-.711,1.743-1.414,2.671-2.1,1.146-.843,2.3-1.62,3.458-2.347a43.96,43.96,0,0,1,12.271-5.51,47.417,47.417,0,0,0-11.631,5.878c-.144.1-.285.2-.427.294a52.021,52.021,0,0,0-5.974,4.812c-5.636,5.3-8.615,10.79-7.261,14.007a4,4,0,0,0,.346.632c1.455,2.139,5.06,2.51,9.63,1.361.311-.077.622-.166.942-.258a37.1,37.1,0,0,0,4.605-1.691c.384-.17.771-.344,1.162-.53.04-.019.078-.037.118-.059,5.038-2.5,8.909-5.383,9.748-7.113a1.076,1.076,0,0,0,.1-.949c-.6-1.213-4.782-.394-9.851,1.8-.407.176-.819.358-1.236.551.339-.314.692-.63,1.052-.942.574-.495,1.169-.978,1.8-1.456a35.749,35.749,0,0,1,2.979-2.031c4.619-3.485,6.954-6.781,6.467-8a.861.861,0,0,0-.589-.486c-.963-.306-2.72.059-4.855.935a36.256,36.256,0,0,0-5.834,3.126l-.28.184-.051.03-.986.653.566-1.037a17.819,17.819,0,0,1,3.914-4.634,27.8,27.8,0,0,1,4.215-3.017c.582-.34,1.162-.656,1.744-.94s1.191-.55,1.773-.781a20.5,20.5,0,0,1,4.951-1.623c-.128,0-4.194.438-4.194.438H111.872Zm63.778.051c-.231,3.521.452,8.679,2,14.4q.413,1.53.9,3.106.307.971.633,1.911c-.127.187-.255.373-.375.56a19.777,19.777,0,0,0-3.347,8.2,50.449,50.449,0,0,1-1.78-8.909q-.148-1.366-.228-2.7c-.381-6.461.462-12.317,2.192-16.568Zm-38.571,4.583c.044,0,.087,0,.132,0h8.7a3.042,3.042,0,0,1,1.729.419.985.985,0,0,1,.464,1.089l-1.037,4.686H144l1.008-4.561h-7.68l-2.773,12.536-1,4.539h7.673l.007-.029,1.538-6.946h-3.6l.346-1.567h6.672l-1.913,8.667a1.226,1.226,0,0,1-.132.345,1.916,1.916,0,0,1-.816.736,4.054,4.054,0,0,1-1.913.419h-8.7a3.037,3.037,0,0,1-1.729-.419.97.97,0,0,1-.463-1.081l3.833-17.326a1.661,1.661,0,0,1,.942-1.089c.019-.009.04-.011.059-.022a4.014,4.014,0,0,1,1.722-.4Zm13.639,0h10.954a3.037,3.037,0,0,1,1.721.419.98.98,0,0,1,.471,1.089l-2.045,9.24a1.658,1.658,0,0,1-.949,1.081,4.025,4.025,0,0,1-1.905.427h-7.96l-1.538,6.938-.25,1.14h-3l.228-1.03,4.274-19.3Zm15.133,0h3l-3.4,15.353-.743,3.355h7.18c.075.55.163,1.091.258,1.626h-10.8l.853-3.856Zm-12.492,1.633-1.994,8.99h7.482l1.986-8.99Zm-15.954,21.218c.029,0,.059,0,.088,0a2.111,2.111,0,0,1,.9.176,1.068,1.068,0,0,1,.552.545,1.329,1.329,0,0,1,.074.787l-.022.11h-.861l.007-.1a.679.679,0,0,0-.081-.471.471.471,0,0,0-.037-.044.518.518,0,0,0-.074-.059,1.063,1.063,0,0,0-.552-.118,1.284,1.284,0,0,0-.728.17.647.647,0,0,0-.294.382.283.283,0,0,0,.059.272l.007.007a2.009,2.009,0,0,0,.728.258,4.948,4.948,0,0,1,.949.3,1.121,1.121,0,0,1,.544.523,1.145,1.145,0,0,1,.059.729,1.669,1.669,0,0,1-.39.728,1.973,1.973,0,0,1-.743.529,2.506,2.506,0,0,1-.956.191,2.384,2.384,0,0,1-1.03-.191,1.184,1.184,0,0,1-.6-.61,1.5,1.5,0,0,1-.074-.89l.022-.1h.846l-.007.1a.93.93,0,0,0,.051.471.578.578,0,0,0,.294.28,1.365,1.365,0,0,0,.589.117,1.626,1.626,0,0,0,.559-.1.986.986,0,0,0,.39-.236.653.653,0,0,0,.169-.316.348.348,0,0,0-.022-.257.537.537,0,0,0-.272-.2l-.721-.214a3.2,3.2,0,0,1-.831-.294,1.029,1.029,0,0,1-.449-.486,1.043,1.043,0,0,1-.037-.639,1.555,1.555,0,0,1,.36-.7,1.8,1.8,0,0,1,.721-.493A2.532,2.532,0,0,1,137.406,1797.228Zm7.725.014c.047,0,.09,0,.14,0l.53.059.177.015-.257.654-.052.1-.4-.037a.469.469,0,0,0-.265.058l-.015.016a.164.164,0,0,0-.029.028.7.7,0,0,0-.11.279s-.015.064-.029.118h.633l-.162.729h-.618c-.047.212-.625,2.8-.625,2.8h-.853s.555-2.49.625-2.8h-.493l.162-.729h.485c.024-.1.059-.228.059-.228a1.807,1.807,0,0,1,.177-.522,1.11,1.11,0,0,1,.4-.4,1.238,1.238,0,0,1,.522-.147Zm2.038.037-.28,1.257h.552l-.162.729h-.552c-.045.2-.4,1.773-.4,1.773s-.029.189-.029.243c0,0,0,.005,0,.007s0,.007,0,.007h.007l.088.007.4-.029-.044.656.007.117-.581.066a.944.944,0,0,1-.522-.117.524.524,0,0,1-.235-.339.548.548,0,0,1-.015-.118,3.014,3.014,0,0,1,.088-.6s.309-1.386.375-1.677h-.4l.162-.729h.4c.038-.17.169-.75.169-.75l.684-.361.28-.146Zm-27.109.028h3.31l-.184.824h-2.42c-.038.166-.189.844-.243,1.089h2.1l-.184.824h-2.1c-.045.206-.449,2.024-.449,2.024H119Zm4.436,1.163a.905.905,0,0,1,.1,0,1,1,0,0,1,.6.2l.118.081-.456.75-.125-.088a.532.532,0,0,0-.294-.089.46.46,0,0,0-.257.089.641.641,0,0,0-.221.243,2.32,2.32,0,0,0-.221.6l-.4,1.81h-.853l.787-3.532h.794s-.027.107-.037.148c.038-.029.077-.068.11-.089A.9.9,0,0,1,124.5,1798.471Zm2.531,0c.051,0,.1,0,.155,0a1.247,1.247,0,0,1,1.081.5,1.363,1.363,0,0,1,.228.794,2.659,2.659,0,0,1-.066.567l-.066.257h-2.4c0,.051-.007.1-.007.148a.7.7,0,0,0,.118.433.534.534,0,0,0,.132.133.652.652,0,0,0,.36.1.845.845,0,0,0,.471-.14,1.235,1.235,0,0,0,.383-.419h.912l-.081.177a2.017,2.017,0,0,1-.721.823,1.945,1.945,0,0,1-1.067.3,1.327,1.327,0,0,1-1.148-.5,1.609,1.609,0,0,1-.162-1.34,2.439,2.439,0,0,1,.75-1.353,1.906,1.906,0,0,1,1.126-.478Zm3.833,0c.051,0,.1,0,.154,0a1.247,1.247,0,0,1,1.081.5,1.363,1.363,0,0,1,.228.794,2.591,2.591,0,0,1-.066.559l-.066.264h-2.4c0,.034-.005.064-.007.1,0,.012,0,.031,0,.044s0,0,0,.008c0,.034,0,.069.007.1a.635.635,0,0,0,.11.331c.012.017.023.037.037.052a.6.6,0,0,0,.456.176.839.839,0,0,0,.471-.14,1.233,1.233,0,0,0,.383-.419h.92l-.088.177a2.017,2.017,0,0,1-.721.823,1.945,1.945,0,0,1-1.067.3,1.226,1.226,0,0,1-1.376-1.3c0-.049,0-.1.007-.154a2.667,2.667,0,0,1,.059-.383,2.439,2.439,0,0,1,.743-1.353A1.926,1.926,0,0,1,130.859,1798.471Zm10.439,0c.053,0,.1,0,.155,0a1.309,1.309,0,0,1,1.111.493,1.569,1.569,0,0,1,.177,1.324,2.724,2.724,0,0,1-.427,1.038,2.023,2.023,0,0,1-1.611.816,1.289,1.289,0,0,1-1.111-.5,1.317,1.317,0,0,1-.235-.8,2.523,2.523,0,0,1,.066-.566,2.307,2.307,0,0,1,.853-1.42,1.983,1.983,0,0,1,1.023-.383Zm12.926,0c.062,0,.12,0,.184,0a1.873,1.873,0,0,1,.706.1.772.772,0,0,1,.4.308.845.845,0,0,1,.11.449l-.088.538-.162.728a7.979,7.979,0,0,0-.177.941.948.948,0,0,0,.037.339l.059.192h-.868l-.037-.111a1.047,1.047,0,0,1-.015-.176,2.594,2.594,0,0,1-.478.243,2.071,2.071,0,0,1-.677.118,1.114,1.114,0,0,1-.876-.309.782.782,0,0,1-.2-.544,1.191,1.191,0,0,1,.029-.25,1.225,1.225,0,0,1,.228-.493,1.371,1.371,0,0,1,.4-.354,1.775,1.775,0,0,1,.478-.191l.522-.088a5.716,5.716,0,0,0,.92-.169.458.458,0,0,1,.015-.051.47.47,0,0,0-.007-.324s-.012-.012-.015-.015a.391.391,0,0,0-.029-.029.722.722,0,0,0-.441-.1.974.974,0,0,0-.515.11.955.955,0,0,0-.316.4h-.89l.081-.177a1.881,1.881,0,0,1,.39-.6,1.61,1.61,0,0,1,.618-.36A2.445,2.445,0,0,1,154.223,1798.471Zm3.73,0a.9.9,0,0,1,.1,0,1.015,1.015,0,0,1,.6.2l.11.081-.456.75-.125-.088a.514.514,0,0,0-.287-.089.488.488,0,0,0-.265.089.642.642,0,0,0-.213.243,2.4,2.4,0,0,0-.221.6l-.4,1.81h-.853l.787-3.532h.795s-.02.107-.029.148a1.309,1.309,0,0,1,.11-.089A.857.857,0,0,1,157.953,1798.471Zm2.523,0c.051,0,.1,0,.154,0a1.244,1.244,0,0,1,1.082.5,1.346,1.346,0,0,1,.228.794,2.7,2.7,0,0,1-.074.567l-.059.257h-2.4c0,.051-.015.1-.015.148a.719.719,0,0,0,.118.433c.012.017.031.037.044.052l.029.029a.614.614,0,0,0,.427.147.845.845,0,0,0,.471-.14,1.259,1.259,0,0,0,.383-.419h.92l-.088.177a2.035,2.035,0,0,1-.721.823,1.945,1.945,0,0,1-1.067.3,1.312,1.312,0,0,1-1.14-.5,1.617,1.617,0,0,1-.169-1.34,2.43,2.43,0,0,1,.743-1.353A1.933,1.933,0,0,1,160.477,1798.471Zm-12.882.066h.875s.108,2.1.11,2.126c.035-.075.063-.137.066-.147l.964-1.979h.8s.074,2.07.074,2.082c.024-.042,1.1-2.082,1.1-2.082h.868l-1.913,3.532h-.787s-.076-1.914-.081-2.024l-.986,2.024h-.809Zm-20.555.67a.935.935,0,0,0-.559.221,1.084,1.084,0,0,0-.3.419h1.449c0-.026.007-.057.007-.081a.612.612,0,0,0-.066-.309.517.517,0,0,0-.486-.25Zm3.833,0a.936.936,0,0,0-.559.221,1.11,1.11,0,0,0-.3.419h1.449c0-.026.007-.057.007-.081a.587.587,0,0,0-.066-.309.629.629,0,0,0-.074-.1.548.548,0,0,0-.412-.154Zm29.647,0a.949.949,0,0,0-.581.221,1.137,1.137,0,0,0-.3.419h1.442c0-.026.007-.057.007-.081a.588.588,0,0,0-.066-.309.525.525,0,0,0-.486-.25Zm-19.275.015a.979.979,0,0,0-.544.266,1.593,1.593,0,0,0-.434.853,1.94,1.94,0,0,0-.052.419.723.723,0,0,0,.1.4.735.735,0,0,0,.059.074.572.572,0,0,0,.434.169.928.928,0,0,0,.647-.272,1.633,1.633,0,0,0,.434-.868,1.047,1.047,0,0,0-.044-.794.534.534,0,0,0-.486-.244C141.32,1799.221,141.282,1799.217,141.246,1799.221Zm13.293,1.288a5.367,5.367,0,0,1-.721.14,2.463,2.463,0,0,0-.471.1.527.527,0,0,0-.2.139.433.433,0,0,0-.1.192.515.515,0,0,0-.007.08s0,.005,0,.007,0,.017,0,.023a.289.289,0,0,0,.007.037s.006.011.007.014,0,.016.007.022.011.016.015.022a.322.322,0,0,0,.022.03.465.465,0,0,0,.346.1,1.169,1.169,0,0,0,.53-.118,1.028,1.028,0,0,0,.39-.338A1.363,1.363,0,0,0,154.54,1800.508Zm-44.936-5.9,19.744-20.385h3.224l-4.767,20.385h-2.652l1.354-5.868H118.23l-5.625,5.868h-3m10.637-7.968h6.769l1.249-5.118q.756-3.044,1.456-5.074-1.4,1.75-3.7,4.157l-5.775,6.034",transform:"translate(-103.684 -1768.232)",fill:"#fff"}),r.createElement("path",{id:"path2",d:"M631.974,1799.956c-2.732-.236-4.789-1.228-6-2.873a6.137,6.137,0,0,1-.6-1.028c-.113-.269-.209-.518-.307-.768l1.1-.427c.094.242.188.482.286.719a5.018,5.018,0,0,0,.475.807c1.017,1.382,2.734,2.189,5.1,2.395l2.581,0a22.475,22.475,0,0,0,2.5-.352,32.267,32.267,0,0,0,4.839-1.375c1.309-.477,2.635-1.036,3.938-1.663a55.682,55.682,0,0,0,8.9-5.387c.944-.694,1.89-1.437,2.811-2.2q1.236-1.028,2.369-2.085a22.658,22.658,0,0,0,4.519-5.8c.87-1.748,1.018-3.148.418-3.941a2.475,2.475,0,0,0-1.874-.815l-1.556-.12,1.249-.937c4.467-3.351,6.994-7.319,6.145-9.648a2.5,2.5,0,0,0-1.6-1.474,5.106,5.106,0,0,0-1.291-.264l-1.372,0a21.024,21.024,0,0,0-7.061,1.994l-.518-1.057a22.329,22.329,0,0,1,7.537-2.112h1.464a6.307,6.307,0,0,1,1.641.332,3.639,3.639,0,0,1,2.3,2.179c.968,2.657-1.24,6.664-5.541,10.2a3.012,3.012,0,0,1,1.41,1.01c.9,1.185.792,2.975-.3,5.176a23.549,23.549,0,0,1-4.763,6.125q-1.166,1.088-2.425,2.135c-.939.783-1.9,1.539-2.867,2.247a56.9,56.9,0,0,1-9.089,5.5c-1.338.644-2.7,1.219-4.044,1.709a33.472,33.472,0,0,1-5.016,1.424,23.259,23.259,0,0,1-2.675.371Z",transform:"translate(-553.088 -1761.542)",fill:"#fff"})))))},Hs=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"})))},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("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"}))},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:"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"})))))},qs=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"})))},Ws=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"}))))},Zs=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"}))},$s=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"}))},Ys=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)"}))))},Ks=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"}))))},Xs=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"}))))},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:"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"})))},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("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"}))},el=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"}))))},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("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"})))},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("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"}))},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:"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"}))},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:"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"}))},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:"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"}))},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:"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"}))},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:"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"}))},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:"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"}))},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("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"}))},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("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"})))},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:"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"}))},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("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"})))},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:"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"}))},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:"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"}))},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:"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"}))},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("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"}))},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("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"}))},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:"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"}))},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("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"})))},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("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"})))},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:"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"}))},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:"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"}))},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:"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"}))},_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("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"}))},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:"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"}))},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(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"}))))},xl=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"}))))},Il=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"}))))},Ol=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"}))},kl=(0,a.i7)(ba||(ba=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"]))),Nl=a.Ay.span({display:"inline-flex",position:"relative"},(0,a.AH)(ya||(ya=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 "])),kl)),Rl=a.Ay.div((function(e){var t=e.theme,n=e.placement,r="6px",a=Wn(t,"tooltip.background","#737373"),o=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:a})};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:a})};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:a})};break;default:i={transform:"translateX(-50%)","&::before":Ve(Ve({},s),{bottom:"100%",borderBottomColor:a})}}return Ve({position:"fixed",borderRadius:4,color:o,background:a,lineHeight:1,zIndex:10001,padding:2,fontSize:12,boxShadow:"#00000050 0px 3px 10px",maxWidth:350},i)})),Ml=a.Ay.div((function(e){var t=e.theme,n=e.placement,r="6px",a=Wn(t,"tooltip.background","#737373"),o={},i={content:"' '",left:"50%",height:0,width:0,position:"absolute",pointerEvents:"none",marginLeft:"calc(".concat(r," * -1);")};switch(n){case"top":o={transform:"translateX(-50%) translateY(-50%)","&::before":Ve(Ve({},i),{top:"100%",borderTopColor:a})};break;case"right":o={transform:"translateX(0) translateY(-50%)","&::before":Ve(Ve({},i),{left:"calc(".concat(r," * -1)"),top:"50%",transform:"translateX(0) translateY(-50%)",borderRightColor:a})};break;case"left":o={transform:"translateX(-100%) translateY(-50%)","&::before":Ve(Ve({},i),{left:"auto",right:"calc(".concat(r," * -2)"),top:"50%",transform:"translateX(0) translateY(-50%)",borderLeftColor:a})};break;default:o={transform:"translateX(-50%)","&::before":Ve(Ve({},i),{bottom:"100%",borderBottomColor:a})}}return Ve({position:"fixed",color:a,zIndex:10001},o)})),Ll=a.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"}}})),Dl=function(e){var t,n=e.children,a=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(Nl,{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,o.createPortal)(r.createElement((function(e){var t=e.placement,n=e.anchorEl,a={},o=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&&(o="top");break;case"left":i.left;break;case"right":i.left+i.width+175>s&&(o="left");break;case"top":i.top<45&&(o="bottom")}switch(o){case"bottom":a={top:i.top+i.height+10,left:i.left+i.width/2};break;case"left":a={top:i.top+i.height/2,left:i.left-12};break;case"right":a={top:i.top+i.height/2,left:i.left+i.width+12};break;case"top":a={top:i.top-i.height/2-10,left:i.left+i.width/2}}}return r.createElement(Ml,{placement:o,style:a,onClick:g},r.createElement(eo,{style:{width:12,height:12}}))}),{placement:i,content:r.createElement(eo,null),anchorEl:l}),document.body),m&&(0,o.createPortal)(r.createElement((function(e){var t=e.placement,n=e.content,a=e.anchorEl,o={},i=t;if(a){var s=a.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":o={top:s.top+s.height+10,left:s.left+s.width/2};break;case"left":o={top:s.top+s.height/2,left:s.left-12};break;case"right":o={top:s.top+s.height/2,left:s.left+s.width+12};break;case"top":o={top:s.top-s.height/2-10,left:s.left+s.width/2}}}return r.createElement(Rl,{placement:i,style:o,onClick:g},n)}),{placement:i,content:r.createElement(Ll,{className:"helpbox-container",ref:b},r.createElement(qr,{container:!0},r.createElement(qr,{item:!0,xs:12,className:"helpText"},a))),anchorEl:l}),document.body))):r.createElement(r.Fragment,null,n)},Pl=a.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)})),Bl=function(e){var t=e.children,n=e.sx,a=e.noMinWidth,o=e.htmlFor,i=e.helpTip,s=e.helpTipPlacement,l=qe(e,["children","sx","noMinWidth","htmlFor","helpTip","helpTipPlacement"]);return r.createElement(Pl,Ve({sx:n,htmlFor:o},l),r.createElement("span",{className:"".concat(a?"noMinWidthLabel":"")},i?r.createElement(Dl,{placement:s,content:i},t):t))},Fl=a.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)})),jl=function(e){var t=e.children,n=e.sx,a=e.className;return r.createElement(Fl,{sx:n,className:a},t)},zl=a.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)})),Ul=function(e){var t=e.tooltip,n=e.label,a=e.id,o=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(jl,{className:"inputItem ".concat(s||""),sx:{display:"flex",justifyContent:"flex-start",alignItems:"center",flexBasis:"initial",flexWrap:"nowrap"}},r.createElement(zl,{sx:i,onClick:function(e){return e.stopPropagation()}},r.createElement("input",Ve({type:"checkbox",id:a},u)),r.createElement("span",{className:"checkbox"})),""!==n&&r.createElement(Bl,{htmlFor:a,noMinWidth:!0,className:"".concat(o||""),sx:{marginLeft:10},helpTip:l,helpTipPlacement:c},n,t&&""!==t&&r.createElement("div",{className:"tooltipContainer"},r.createElement(qa,{tooltip:t,placement:"top"},r.createElement(Wo,null)))))},Hl=a.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")}}})),Gl=function(e){var t=e.children,n=qe(e,["children"]);return r.createElement(Hl,Ve({},n),t)};function Vl(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function ql(e){return ql="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},ql(e)}function Wl(e){var t=function(e,t){if("object"!=ql(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!=ql(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==ql(t)?t:t+""}function Zl(e,t){for(var n=0;n=0&&l===s&&c())}function cc(e,t){if(null==e)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}function uc(e,t){if(null==e)return{};var n,r,a=cc(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}tc.__suppressDeprecationWarning=!0,nc.__suppressDeprecationWarning=!0,rc.__suppressDeprecationWarning=!0;var dc,pc,hc,mc,fc={exports:{}};fc.exports=function(){if(mc)return hc;mc=1;var e=pc?dc:(pc=1,dc="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED");function t(){}function n(){}return n.resetWarningCache=t,hc=function(){function r(t,n,r,a,o,i){if(i!==e){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function a(){return r}r.isRequired=r;var o={array:r,bigint:r,bool:r,func:r,number:r,object:r,string:r,symbol:r,any:r,arrayOf:a,element:r,elementType:r,instanceOf:a,node:r,objectOf:a,oneOf:a,oneOfType:a,shape:a,exact:a,checkPropTypes:n,resetWarningCache:t};return o.PropTypes=o,o}}()();Ye(fc.exports);var gc=function(){function e(t){var n=t.cellCount,r=t.cellSizeGetter,a=t.estimatedCellSize;Vl(this,e),ec(this,"_cellSizeAndPositionData",{}),ec(this,"_lastMeasuredIndex",-1),ec(this,"_lastBatchedIndex",-1),ec(this,"_cellCount",void 0),ec(this,"_cellSizeGetter",void 0),ec(this,"_estimatedCellSize",void 0),this._cellSizeGetter=r,this._cellCount=n,this._estimatedCellSize=a}return $l(e,[{key:"areOffsetsAdjusted",value:function(){return!1}},{key:"configure",value:function(e){var t=e.cellCount,n=e.estimatedCellSize,r=e.cellSizeGetter;this._cellCount=t,this._estimatedCellSize=n,this._cellSizeGetter=r}},{key:"getCellCount",value:function(){return this._cellCount}},{key:"getEstimatedCellSize",value:function(){return this._estimatedCellSize}},{key:"getLastMeasuredIndex",value:function(){return this._lastMeasuredIndex}},{key:"getOffsetAdjustment",value:function(){return 0}},{key:"getSizeAndPositionOfCell",value:function(e){if(e<0||e>=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 a=this._cellSizeGetter({index:r});if(void 0===a||isNaN(a))throw Error("Invalid size returned for cell ".concat(r," of value ").concat(a));null===a?(this._cellSizeAndPositionData[r]={offset:n,size:0},this._lastBatchedIndex=e):(this._cellSizeAndPositionData[r]={offset:n,size:a},n+=a,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,a=e.currentOffset,o=e.targetIndex;if(r<=0)return 0;var i,s=this.getSizeAndPositionOfCell(o),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,a))}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,a=this._findNearestCell(n),o=this.getSizeAndPositionOfCell(a);n=o.offset+o.size;for(var i=a;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}(),bc=function(){function e(t){var n=t.maxScrollSize,r=void 0===n?"undefined"!=typeof window&&window.chrome?16777100:15e5:n,a=uc(t,["maxScrollSize"]);Vl(this,e),ec(this,"_cellSizeAndPositionManager",void 0),ec(this,"_maxScrollSize",void 0),this._cellSizeAndPositionManager=new gc(a),this._maxScrollSize=r}return $l(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(),a=this.getTotalSize(),o=this._getOffsetPercentage({containerSize:t,offset:n,totalSize:a});return Math.round(o*(a-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,a=e.currentOffset,o=e.targetIndex;a=this._safeOffsetToOffset({containerSize:r,offset:a});var i=this._cellSizeAndPositionManager.getUpdatedOffsetForIndex({align:n,containerSize:r,currentOffset:a,targetIndex:o});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(),a=this.getTotalSize();if(r===a)return n;var o=this._getOffsetPercentage({containerSize:t,offset:n,totalSize:r});return Math.round(o*(a-t))}},{key:"_safeOffsetToOffset",value:function(e){var t=e.containerSize,n=e.offset,r=this._cellSizeAndPositionManager.getTotalSize(),a=this.getTotalSize();if(r===a)return n;var o=this._getOffsetPercentage({containerSize:t,offset:n,totalSize:a});return Math.round(o*(r-t))}}]),e}();function yc(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],t={};return function(n){var r=n.callback,a=n.indices,o=Object.keys(a),i=!e||o.every((function(e){var t=a[e];return Array.isArray(t)?t.length>0:t>=0})),s=o.length!==Object.keys(t).length||o.some((function(e){var n=t[e],r=a[e];return Array.isArray(r)?n.join(",")!==r.join(","):n!==r}));t=a,i&&s&&r(a)}}function vc(e){var t=e.cellSize,n=e.cellSizeAndPositionManager,r=e.previousCellsCount,a=e.previousCellSize,o=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 Ec,wc,Sc=!("undefined"==typeof window||!window.document||!window.document.createElement);function Ac(e){if((!Ec&&0!==Ec||e)&&Sc){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),Ec=t.offsetWidth-t.clientWidth,document.body.removeChild(t)}return Ec}var _c,Tc,Cc=(wc="undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).requestAnimationFrame||wc.webkitRequestAnimationFrame||wc.mozRequestAnimationFrame||wc.oRequestAnimationFrame||wc.msRequestAnimationFrame||function(e){return wc.setTimeout(e,1e3/60)},xc=wc.cancelAnimationFrame||wc.webkitCancelAnimationFrame||wc.mozCancelAnimationFrame||wc.oCancelAnimationFrame||wc.msCancelAnimationFrame||function(e){wc.clearTimeout(e)},Ic=Cc,Oc=xc,kc=function(e){return Oc(e.id)},Nc=function(e,t){var n;Promise.resolve().then((function(){n=Date.now()}));var r={id:Ic((function a(){Date.now()-n>=t?e.call():r.id=Ic(a)}))};return r};function Rc(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 Mc(e){for(var t=1;t0&&(n._initialScrollTop=n._getCalculatedScrollTop(e,n.state)),e.scrollToColumn>0&&(n._initialScrollLeft=n._getCalculatedScrollLeft(e,n.state)),n}return Ql(t,r.PureComponent),$l(t,[{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,a=void 0===r?this.props.scrollToColumn:r,o=e.rowIndex,i=void 0===o?this.props.scrollToRow:o,s=Mc({},this.props,{scrollToAlignment:n,scrollToColumn:a,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,a=void 0===r?0:r;if(!(a<0)){this._debounceScrollEnded();var o=this.props,i=o.autoHeight,s=o.autoWidth,l=o.height,c=o.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),a);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,a=void 0===r?0:r,o=this.props,i=o.scrollToColumn,s=o.scrollToRow,l=this.state.instanceProps;l.columnSizeAndPositionManager.resetCell(n),l.rowSizeAndPositionManager.resetCell(a),this._recomputeScrollLeftFlag=i>=0&&(1===this.state.scrollDirectionHorizontal?n<=i:n>=i),this._recomputeScrollTopFlag=s>=0&&(1===this.state.scrollDirectionVertical?a<=s:a>=s),this._styleCache={},this._cellCache={},this.forceUpdate()}},{key:"scrollToCell",value:function(e){var t=e.columnIndex,n=e.rowIndex,r=this.props.columnCount,a=this.props;r>1&&void 0!==t&&this._updateScrollLeftForScrollToColumn(Mc({},a,{scrollToColumn:t})),void 0!==n&&this._updateScrollTopForScrollToRow(Mc({},a,{scrollToRow:n}))}},{key:"componentDidMount",value:function(){var e=this.props,n=e.getScrollbarSize,r=e.height,a=e.scrollLeft,o=e.scrollToColumn,i=e.scrollTop,s=e.scrollToRow,l=e.width,c=this.state.instanceProps;if(this._initialScrollTop=0,this._initialScrollLeft=0,this._handleInvalidatedGridSize(),c.scrollbarSizeMeasured||this.setState((function(e){var t=Mc({},e,{needToResetStyleCache:!1});return t.instanceProps.scrollbarSize=n(),t.instanceProps.scrollbarSizeMeasured=!0,t})),"number"==typeof a&&a>=0||"number"==typeof i&&i>=0){var u=t._getScrollToPositionStateUpdate({prevState:this.state,scrollLeft:a,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;o>=0&&d&&this._updateScrollLeftForScrollToColumn(),s>=0&&d&&this._updateScrollTopForScrollToRow(),this._invokeOnGridRenderedHelper(),this._invokeOnScrollMemoizer({scrollLeft:a||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,a=r.autoHeight,o=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===Pc&&(!o&&m>=0&&(m!==this._scrollingContainer.scrollLeft||y)&&(this._scrollingContainer.scrollLeft=m),!a&&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)):vc({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)):vc({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&&kc(this._disablePointerEventsTimeoutId)}},{key:"render",value:function(){var e=this.props,t=e.autoContainerWidth,n=e.autoHeight,a=e.autoWidth,o=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:a?"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",oc({ref:this._setScrollingContainerRef},i,{"aria-label":this.props["aria-label"],"aria-readonly":this.props["aria-readonly"],className:sc("ReactVirtualized__Grid",o),id:u,onScroll:this._onScroll,role:p,style:Mc({},E,{},h),tabIndex:m}),T.length>0&&r.createElement("div",{className:"ReactVirtualized__Grid__innerScrollContainer",role:s,style:Mc({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,a=e.columnCount,o=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:a,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(o){if(!o.hasFixedHeight())for(var O=x;O<=I;O++)if(!o.has(O,0)){T=0,C=a-1;break}if(!o.hasFixedWidth())for(var k=T;k<=C;k++)if(!o.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:o,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&&kc(this._disablePointerEventsTimeoutId),this._disablePointerEventsTimeoutId=Nc(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,a=e.totalColumnsWidth,o=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:o,scrollLeft:n,scrollTop:r,scrollWidth:a})},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(e){var n=e.scrollLeft,r=e.scrollTop,a=t._getScrollToPositionStateUpdate({prevState:this.state,scrollLeft:n,scrollTop:r});a&&(a.needToResetStyleCache=!1,this.setState(a))}},{key:"_getCalculatedScrollLeft",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.props,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.state;return t._getCalculatedScrollLeft(e,n)}},{key:"_updateScrollLeftForScrollToColumn",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.props,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.state,r=t._getScrollLeftForScrollToColumnStateUpdate(e,n);r&&(r.needToResetStyleCache=!1,this.setState(r))}},{key:"_getCalculatedScrollTop",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.props,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.state;return t._getCalculatedScrollTop(e,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 a=this._columnStartIndex;a<=this._columnStopIndex;a++){var o="".concat(r,"-").concat(a);this._styleCache[o]=e[o],n&&(this._cellCache[o]=t[o])}}},{key:"_updateScrollTopForScrollToRow",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.props,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.state,r=t._getScrollTopForScrollToRowStateUpdate(e,n);r&&(r.needToResetStyleCache=!1,this.setState(r))}}],[{key:"getDerivedStateFromProps",value:function(e,n){var r={};0===e.columnCount&&0!==n.scrollLeft||0===e.rowCount&&0!==n.scrollTop?(r.scrollLeft=0,r.scrollTop=0):(e.scrollLeft!==n.scrollLeft&&e.scrollToColumn<0||e.scrollTop!==n.scrollTop&&e.scrollToRow<0)&&Object.assign(r,t._getScrollToPositionStateUpdate({prevState:n,scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}));var a,o,i=n.instanceProps;return r.needToResetStyleCache=!1,e.columnWidth===i.prevColumnWidth&&e.rowHeight===i.prevRowHeight||(r.needToResetStyleCache=!0),i.columnSizeAndPositionManager.configure({cellCount:e.columnCount,estimatedCellSize:t._getEstimatedColumnSize(e),cellSizeGetter:t._wrapSizeGetter(e.columnWidth)}),i.rowSizeAndPositionManager.configure({cellCount:e.rowCount,estimatedCellSize:t._getEstimatedRowSize(e),cellSizeGetter:t._wrapSizeGetter(e.rowHeight)}),0!==i.prevColumnCount&&0!==i.prevRowCount||(i.prevColumnCount=0,i.prevRowCount=0),e.autoHeight&&!1===e.isScrolling&&!0===i.prevIsScrolling&&Object.assign(r,{isScrolling:!1}),lc({cellCount:i.prevColumnCount,cellSize:"number"==typeof i.prevColumnWidth?i.prevColumnWidth:null,computeMetadataCallback:function(){return i.columnSizeAndPositionManager.resetCell(0)},computeMetadataCallbackProps:e,nextCellsCount:e.columnCount,nextCellSize:"number"==typeof e.columnWidth?e.columnWidth:null,nextScrollToIndex:e.scrollToColumn,scrollToIndex:i.prevScrollToColumn,updateScrollOffsetForScrollToIndex:function(){a=t._getScrollLeftForScrollToColumnStateUpdate(e,n)}}),lc({cellCount:i.prevRowCount,cellSize:"number"==typeof i.prevRowHeight?i.prevRowHeight:null,computeMetadataCallback:function(){return i.rowSizeAndPositionManager.resetCell(0)},computeMetadataCallbackProps:e,nextCellsCount:e.rowCount,nextCellSize:"number"==typeof e.rowHeight?e.rowHeight:null,nextScrollToIndex:e.scrollToRow,scrollToIndex:i.prevScrollToRow,updateScrollOffsetForScrollToIndex:function(){o=t._getScrollTopForScrollToRowStateUpdate(e,n)}}),i.prevColumnCount=e.columnCount,i.prevColumnWidth=e.columnWidth,i.prevIsScrolling=!0===e.isScrolling,i.prevRowCount=e.rowCount,i.prevRowHeight=e.rowHeight,i.prevScrollToColumn=e.scrollToColumn,i.prevScrollToRow=e.scrollToRow,i.scrollbarSize=e.getScrollbarSize(),void 0===i.scrollbarSize?(i.scrollbarSizeMeasured=!1,i.scrollbarSize=0):i.scrollbarSizeMeasured=!0,r.instanceProps=i,Mc({},r,{},a,{},o)}},{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,a={scrollPositionChangeReason:Pc};return"number"==typeof n&&n>=0&&(a.scrollDirectionHorizontal=n>t.scrollLeft?1:-1,a.scrollLeft=n),"number"==typeof r&&r>=0&&(a.scrollDirectionVertical=r>t.scrollTop?1:-1,a.scrollTop=r),"number"==typeof n&&n>=0&&n!==t.scrollLeft||"number"==typeof r&&r>=0&&r!==t.scrollTop?a:{}}},{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,a=e.scrollToAlignment,o=e.scrollToColumn,i=e.width,s=t.scrollLeft,l=t.instanceProps;if(n>0){var c=n-1,u=o<0?c:Math.min(c,o),d=l.rowSizeAndPositionManager.getTotalSize(),p=l.scrollbarSizeMeasured&&d>r?l.scrollbarSize:0;return l.columnSizeAndPositionManager.getUpdatedOffsetForIndex({align:a,containerSize:i-p,currentOffset:s,targetIndex:u})}return 0}},{key:"_getScrollLeftForScrollToColumnStateUpdate",value:function(e,n){var r=n.scrollLeft,a=t._getCalculatedScrollLeft(e,n);return"number"==typeof a&&a>=0&&r!==a?t._getScrollToPositionStateUpdate({prevState:n,scrollLeft:a,scrollTop:-1}):{}}},{key:"_getCalculatedScrollTop",value:function(e,t){var n=e.height,r=e.rowCount,a=e.scrollToAlignment,o=e.scrollToRow,i=e.width,s=t.scrollTop,l=t.instanceProps;if(r>0){var c=r-1,u=o<0?c:Math.min(c,o),d=l.columnSizeAndPositionManager.getTotalSize(),p=l.scrollbarSizeMeasured&&d>i?l.scrollbarSize:0;return l.rowSizeAndPositionManager.getUpdatedOffsetForIndex({align:a,containerSize:n-p,currentOffset:s,targetIndex:u})}return 0}},{key:"_getScrollTopForScrollToRowStateUpdate",value:function(e,n){var r=n.scrollTop,a=t._getCalculatedScrollTop(e,n);return"number"==typeof a&&a>=0&&r!==a?t._getScrollToPositionStateUpdate({prevState:n,scrollLeft:-1,scrollTop:a}):{}}}]),t}(),ec(_c,"propTypes",null),Tc);function Fc(e){var t=e.cellCount,n=e.overscanCellsCount,r=e.scrollDirection,a=e.startIndex,o=e.stopIndex;return n=Math.max(1,n),1===r?{overscanStartIndex:Math.max(0,a-1),overscanStopIndex:Math.min(t-1,o+n)}:{overscanStartIndex:Math.max(0,a-n),overscanStopIndex:Math.min(t-1,o+1)}}function jc(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}ec(Bc,"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,a=e.columnStartIndex,o=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=a;A<=o;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:Ac,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,a=e.startIndex,o=e.stopIndex;return 1===r?{overscanStartIndex:Math.max(0,a),overscanStopIndex:Math.min(t-1,o+n)}:{overscanStartIndex:Math.max(0,a-n),overscanStopIndex:Math.min(t-1,o)}},overscanRowCount:10,role:"grid",scrollingResetTimeInterval:150,scrollToAlignment:"auto",scrollToColumn:-1,scrollToRow:-1,style:{},tabIndex:0,isScrollingOptOut:!1}),ac(Bc);var zc,Uc,Hc=(Dc=Lc=function(e){function t(){var e,n;Vl(this,t);for(var r=arguments.length,a=new Array(r),o=0;o 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],a=t.createElement("style");a.id="detectElementResize",a.type="text/css",null!=e&&a.setAttribute("nonce",e),a.styleSheet?a.styleSheet.cssText=n:a.appendChild(t.createTextNode(n)),r.appendChild(a)}}(o),t.__resizeLast__={},t.__resizeListeners__=[],(t.__resizeTriggers__=o.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(a)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 Vc(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 qc(e){for(var t=1;t=0){var u=t.getScrollPositionForCell({align:a,cellIndex:o,height:r,scrollLeft:l,scrollTop:c,width:i});u.scrollLeft===l&&u.scrollTop===c||n._setScrollPosition(u)}})),ec(Yl(n),"_onScroll",(function(e){if(e.target===n._scrollingContainer){n._enablePointerEventsAfterDelay();var t=n.props,r=t.cellLayoutManager,a=t.height,o=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-a+s,e.target.scrollTop));if(n.state.scrollLeft!==d||n.state.scrollTop!==p){var h=e.cancelable?"observed":Jc;n.state.isScrolling||o(!0),n.setState({isScrolling:!0,scrollLeft:d,scrollPositionChangeReason:h,scrollTop:p})}n._invokeOnScrollMemoizer({scrollLeft:d,scrollTop:p,totalWidth:u,totalHeight:c})}})),n._scrollbarSize=Ac(),void 0===n._scrollbarSize?(n._scrollbarSizeMeasured=!1,n._scrollbarSize=0):n._scrollbarSizeMeasured=!0,n}return Ql(t,r.PureComponent),$l(t,[{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,a=e.scrollTop;this._scrollbarSizeMeasured||(this._scrollbarSize=Ac(),this._scrollbarSizeMeasured=!0,this.setState({})),r>=0?this._updateScrollPositionForScrollToCell():(n>=0||a>=0)&&this._setScrollPosition({scrollLeft:n,scrollTop:a}),this._invokeOnSectionRenderedHelper();var o=t.getTotalSize(),i=o.height,s=o.width;this._invokeOnScrollMemoizer({scrollLeft:n||0,scrollTop:a||0,totalHeight:i,totalWidth:s})}},{key:"componentDidUpdate",value:function(e,t){var n=this.props,r=n.height,a=n.scrollToAlignment,o=n.scrollToCell,i=n.width,s=this.state,l=s.scrollLeft,c=s.scrollPositionChangeReason,u=s.scrollTop;c===Jc&&(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&&a===e.scrollToAlignment&&o===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,a=e.cellLayoutManager,o=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!==a||this._calculateSizeAndPositionDataOnNextUpdate)&&(this._lastRenderedCellCount=n,this._lastRenderedCellLayoutManager=a,this._calculateSizeAndPositionDataOnNextUpdate=!1,a.calculateSizeAndPositionData());var b=a.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?a.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:sc("ReactVirtualized__Collection",o),id:l,onScroll:this._onScroll,role:"grid",style:Xc({},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,a=e.totalHeight,o=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:a,scrollLeft:n,scrollTop:r,scrollWidth:o})},indices:{scrollLeft:n,scrollTop:r}})}},{key:"_setScrollPosition",value:function(e){var t=e.scrollLeft,n=e.scrollTop,r={scrollPositionChangeReason:Jc};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:Jc}:null:{scrollLeft:0,scrollTop:0,scrollPositionChangeReason:Jc}}}]),t}();ec(Qc,"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}),Qc.propTypes={},ac(Qc);var eu=function(){function e(t){var n=t.height,r=t.width,a=t.x,o=t.y;Vl(this,e),this.height=n,this.width=r,this.x=a,this.y=o,this._indexMap={},this._indices=[]}return $l(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}(),tu=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:100;Vl(this,e),this._sectionSize=t,this._cellMetadata=[],this._sections={}}return $l(e,[{key:"getCellIndices",value:function(e){var t=e.height,n=e.width,r=e.x,a=e.y,o={};return this.getSections({height:t,width:n,x:r,y:a}).forEach((function(e){return e.getCellIndices().forEach((function(e){o[e]=e}))})),Object.keys(o).map((function(e){return o[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,a=e.y,o=Math.floor(r/this._sectionSize),i=Math.floor((r+n-1)/this._sectionSize),s=Math.floor(a/this._sectionSize),l=Math.floor((a+t-1)/this._sectionSize),c=[],u=o;u<=i;u++)for(var d=s;d<=l;d++){var p="".concat(u,".").concat(d);this._sections[p]||(this._sections[p]=new eu({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 nu(e){var t=e.align,n=void 0===t?"auto":t,r=e.cellOffset,a=e.cellSize,o=e.containerSize,i=e.currentOffset,s=r,l=s-o+a;switch(n){case"start":return s;case"end":return l;case"center":return s-(o-a)/2;default:return Math.max(l,Math.min(s,i))}}var ru=function(e){function t(e,n){var r;return Vl(this,t),(r=Kl(this,Xl(t).call(this,e,n)))._cellMetadata=[],r._lastRenderedCellIndices=[],r._cellCache=[],r._isScrollingChange=r._isScrollingChange.bind(Yl(r)),r._setCollectionViewRef=r._setCollectionViewRef.bind(Yl(r)),r}return Ql(t,r.PureComponent),$l(t,[{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=oc({},this.props);return r.createElement(Qc,oc({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=[],a=new tu(e.sectionSize),o=0,i=0,s=0;s=0&&ne.length)&&(t=e.length);for(var n=0,r=new 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,a=this.props,o=a.isRowLoaded,i=a.minimumBatchSize,s=a.rowCount,l=a.threshold,c=function(e){for(var t=e.isRowLoaded,n=e.minimumBatchSize,r=e.rowCount,a=e.stopIndex,o=[],i=null,s=null,l=e.startIndex;l<=a;l++)t({index:l})?null!==s&&(o.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;o.push({startIndex:i,stopIndex:s})}if(o.length)for(var d=o[0];d.stopIndex-d.startIndex+10;){var p=d.startIndex-1;if(t({index:p}))break;d.startIndex=p}return o}({isRowLoaded:o,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 au(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||ou(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}}]),t}();ec(iu,"defaultProps",{minimumBatchSize:10,rowCount:0,threshold:15}),iu.propTypes={};var su,lu,cu=(lu=su=function(e){function t(){var e,n;Vl(this,t);for(var r=arguments.length,a=new Array(r),o=0;o0&&void 0!==arguments[0]?arguments[0]:{},t=e.columnIndex,n=void 0===t?0:t,r=e.rowIndex,a=void 0===r?0:r;this.Grid&&this.Grid.recomputeGridSize({rowIndex:a,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,a=e.scrollToIndex,o=e.width,i=sc("ReactVirtualized__List",t);return r.createElement(Bc,oc({},this.props,{autoContainerWidth:!0,cellRenderer:this._cellRenderer,className:i,columnWidth:o,columnCount:1,noContentRenderer:n,onScroll:this._onScroll,onSectionRendered:this._onSectionRendered,ref:this._setRef,scrollToRow:a}))}}]),t}(),ec(su,"propTypes",null),lu);ec(cu,"defaultProps",{autoHeight:!1,estimatedRowSize:30,onScroll:function(){},noRowsRenderer:function(){return null},onRowsRendered:function(){},overscanIndicesGetter:Fc,overscanRowCount:10,scrollToAlignment:"auto",scrollToIndex:-1,style:{}});var uu=function(e,t,n,r,a){return"function"==typeof n?function(e,t,n,r,a){for(var o=n+1;t<=n;){var i=t+n>>>1;a(e[i],r)>=0?(o=i,n=i-1):t=i+1}return o}(e,void 0===r?0:0|r,void 0===a?e.length-1:0|a,t,n):function(e,t,n,r){for(var a=n+1;t<=n;){var o=t+n>>>1;e[o]>=r?(a=o,n=o-1):t=o+1}return a}(e,void 0===n?0:0|n,void 0===r?e.length-1:0|r,t)};function du(e,t,n,r,a){this.mid=e,this.left=t,this.right=n,this.leftPoints=r,this.rightPoints=a,this.count=(t?t.count:0)+(n?n.count:0)+r.length}var pu=du.prototype;function hu(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 mu(e,t){var n=Au(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 fu(e,t){var n=e.intervals([]);n.push(t),mu(e,n)}function gu(e,t){var n=e.intervals([]),r=n.indexOf(t);return r<0?0:(n.splice(r,1),mu(e,n),1)}function bu(e,t,n){for(var r=0;r=0&&e[r][1]>=t;--r){var a=n(e[r]);if(a)return a}}function vu(e,t){for(var n=0;n>1],a=[],o=[],i=[];for(n=0;n3*(t+1)?fu(this,e):this.left.insert(e):this.left=Au([e]);else if(e[0]>this.mid)this.right?4*(this.right.count+1)>3*(t+1)?fu(this,e):this.right.insert(e):this.right=Au([e]);else{var n=uu(this.leftPoints,e,wu),r=uu(this.rightPoints,e,Su);this.leftPoints.splice(n,0,e),this.rightPoints.splice(r,0,e)}},pu.remove=function(e){var t=this.count-this.leftPoints;if(e[1]3*(t-1)?gu(this,e):2===(o=this.left.remove(e))?(this.left=null,this.count-=1,1):(1===o&&(this.count-=1),o):0;if(e[0]>this.mid)return this.right?4*(this.left?this.left.count:0)>3*(t-1)?gu(this,e):2===(o=this.right.remove(e))?(this.right=null,this.count-=1,1):(1===o&&(this.count-=1),o):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 a=this.left,o=this.right;n.count-=r.count,n.right=r.left,r.left=a,r.right=o}hu(this,r),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?hu(this,this.left):hu(this,this.right);return 1}for(a=uu(this.leftPoints,e,wu);athis.mid?this.right&&(n=this.right.queryPoint(e,t))?n:yu(this.rightPoints,e,t):vu(this.leftPoints,t);var n},pu.queryInterval=function(e,t,n){var r;return ethis.mid&&this.right&&(r=this.right.queryInterval(e,t,n))?r:tthis.mid?yu(this.rightPoints,e,n):vu(this.leftPoints,n)};var Tu=_u.prototype;Tu.insert=function(e){this.root?this.root.insert(e):this.root=new du(e[0],null,null,[e],[e])},Tu.remove=function(e){if(this.root){var t=this.root.remove(e);return 2===t&&(this.root=null),0!==t}return!1},Tu.queryPoint=function(e,t){if(this.root)return this.root.queryPoint(e,t)},Tu.queryInterval=function(e,t,n){if(e<=t&&this.root)return this.root.queryInterval(e,t,n)},Object.defineProperty(Tu,"count",{get:function(){return this.root?this.root.count:0}}),Object.defineProperty(Tu,"intervals",{get:function(){return this.root?this.root.intervals([]):[]}});var Cu,xu,Iu=function(){function e(){Vl(this,e),ec(this,"_columnSizeMap",{}),ec(this,"_intervalTree",new _u(null)),ec(this,"_leftMap",{})}return $l(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,a,o,i,s=[],l=!0,c=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=o.call(n)).done)&&(s.push(r.value),s.length!==t);l=!0);}catch(e){c=!0,a=e}finally{try{if(!l&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(c)throw a}}return s}}(e,t)||ou(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),a=t[0];t[1];var o=t[2];return n(o,r._leftMap[o],a)}))}},{key:"setPosition",value:function(e,t,n,r){this._intervalTree.insert([n,n+r,e]),this._leftMap[e]=t;var a=this._columnSizeMap,o=a[t];a[t]=void 0===o?n+r:Math.max(o,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 Ou(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 ku(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:{};Vl(this,e),ec(this,"_cellMeasurerCache",void 0),ec(this,"_columnIndexOffset",void 0),ec(this,"_rowIndexOffset",void 0),ec(this,"columnWidth",(function(e){var n=e.index;t._cellMeasurerCache.columnWidth({index:n+t._columnIndexOffset})})),ec(this,"rowHeight",(function(e){var n=e.index;t._cellMeasurerCache.rowHeight({index:n+t._rowIndexOffset})}));var r=n.cellMeasurerCache,a=n.columnIndexOffset,o=void 0===a?0:a,i=n.rowIndexOffset,s=void 0===i?0:i;this._cellMeasurerCache=r,this._columnIndexOffset=o,this._rowIndexOffset=s}return $l(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 Lu(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 Du(e){for(var t=1;t0?new Mu({cellMeasurerCache:o,columnIndexOffset:0,rowIndexOffset:s}):o,a._deferredMeasurementCacheBottomRightGrid=i>0||s>0?new Mu({cellMeasurerCache:o,columnIndexOffset:i,rowIndexOffset:s}):o,a._deferredMeasurementCacheTopRightGrid=i>0?new Mu({cellMeasurerCache:o,columnIndexOffset:i,rowIndexOffset:0}):o),a}return Ql(t,r.PureComponent),$l(t,[{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,a=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,a):a}},{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,a=void 0===r?0:r,o=this.props,i=o.fixedColumnCount,s=o.fixedRowCount,l=Math.max(0,n-i),c=Math.max(0,a-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:a}),this._topRightGrid&&this._topRightGrid.recomputeGridSize({columnIndex:l,rowIndex:a}),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 a=e.scrollToColumn;e.scrollTop;var o=e.scrollToRow,i=uc(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(Du({},i,{onScroll:t,scrollLeft:l}))),r.createElement("div",{style:this._containerBottomStyle},this._renderBottomLeftGrid(Du({},i,{onScroll:t,scrollTop:c})),this._renderBottomRightGrid(Du({},i,{onScroll:t,onSectionRendered:n,scrollLeft:l,scrollToColumn:a,scrollToRow:o,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,a=0;a=0?e.scrollLeft:t.scrollLeft,scrollTop:null!=e.scrollTop&&e.scrollTop>=0?e.scrollTop:t.scrollTop}:null}}]),t}();ec(Pu,"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}),Pu.propTypes={},ac(Pu);function Bu(e){var t=e.className,n=e.columns,a=e.style;return r.createElement("div",{className:t,role:"row",style:a},n)}Bu.propTypes=null;var Fu={ASC:"ASC",DESC:"DESC"};function ju(e){var t=e.sortDirection,n=sc("ReactVirtualized__Table__sortableHeaderIcon",{"ReactVirtualized__Table__sortableHeaderIcon--ASC":t===Fu.ASC,"ReactVirtualized__Table__sortableHeaderIcon--DESC":t===Fu.DESC});return r.createElement("svg",{className:n,width:18,height:18,viewBox:"0 0 24 24"},t===Fu.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 zu(e){var t=e.dataKey,n=e.label,a=e.sortBy,o=e.sortDirection,i=a===t,s=[r.createElement("span",{className:"ReactVirtualized__Table__headerTruncatedText",key:"label",title:"string"==typeof n?n:null},n)];return i&&s.push(r.createElement(ju,{key:"SortIndicator",sortDirection:o})),s}function Uu(e){var t=e.className,n=e.columns,a=e.index,o=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":a+1};return(i||s||l||c||u)&&(h["aria-label"]="row",h.tabIndex=0,i&&(h.onClick=function(e){return i({event:e,index:a,rowData:d})}),s&&(h.onDoubleClick=function(e){return s({event:e,index:a,rowData:d})}),l&&(h.onMouseOut=function(e){return l({event:e,index:a,rowData:d})}),c&&(h.onMouseOver=function(e){return c({event:e,index:a,rowData:d})}),u&&(h.onContextMenu=function(e){return u({event:e,index:a,rowData:d})})),r.createElement("div",oc({},h,{className:t,key:o,role:"row",style:p}),n)}ju.propTypes={},zu.propTypes=null,Uu.propTypes=null;var Hu=function(e){function t(){return Vl(this,t),Kl(this,Xl(t).apply(this,arguments))}return Ql(t,r.Component),t}();function Gu(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 Vu(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:{},t=e.columnIndex,n=void 0===t?0:t,r=e.rowIndex,a=void 0===r?0:r;this.Grid&&this.Grid.recomputeGridSize({rowIndex:a,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,o.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,a=t.className,o=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=o?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]=Vu({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:sc("ReactVirtualized__Table",a),id:d,role:"grid",style:g},!o&&c({className:sc("ReactVirtualized__Table__headerRow",E),columns:this._getHeaderColumns(),style:Vu({height:l,overflow:"hidden",paddingRight:y,width:b},w)}),r.createElement(Bc,oc({},this.props,{"aria-readonly":null,autoContainerWidth:!0,className:sc("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:Vu({},s,{overflowX:"hidden"})})))}},{key:"_createColumn",value:function(e){var t=e.column,n=e.columnIndex,a=e.isScrolling,o=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:a,parent:o,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:sc("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,a,o,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=sc("ReactVirtualized__Table__headerColumn",u,s.props.headerClassName,{ReactVirtualized__Table__sortableHeaderColumn:_}),C=this._getFlexStyleForColumn(s,Vu({},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===Fu.DESC?Fu.ASC:Fu.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,o="none",a=0,t=O,n=function(e){"Enter"!==e.key&&" "!==e.key||O(e)}}return m===y&&(o=f===Fu.ASC?"ascending":"descending"),r.createElement("div",{"aria-label":i,"aria-sort":o,className:T,id:S,key:"Header-Col"+l,onClick:t,onKeyDown:n,role:"columnheader",style:C,tabIndex:a},x)}},{key:"_createRow",value:function(e){var t=this,n=e.rowIndex,a=e.isScrolling,o=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:a,parent:i,rowData:S,rowIndex:n,scrollbarWidth:v})})),_=sc("ReactVirtualized__Table__row",E),T=Vu({},s,{height:this._getRowHeight(n),overflow:"hidden",paddingRight:v},w);return b({className:_,columns:A,index:n,isScrolling:a,key:o,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=Vu({},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,a=e.rowStopIndex;(0,this.props.onRowsRendered)({overscanStartIndex:t,overscanStopIndex:n,startIndex:r,stopIndex:a})}},{key:"_setRef",value:function(e){this.Grid=e}},{key:"_setScrollbarWidth",value:function(){var e=this.getScrollbarWidth();this.setState({scrollbarWidth:e})}}]),t}();ec(qu,"defaultProps",{disableHeader:!1,estimatedRowSize:30,headerHeight:0,headerStyle:{},noRowsRenderer:function(){return null},onRowsRendered:function(){return null},onScroll:function(){return null},overscanIndicesGetter:Fc,overscanRowCount:10,rowRenderer:Uu,headerRowRenderer:Bu,rowStyle:{},scrollToAlignment:"auto",scrollToIndex:-1,style:{}}),qu.propTypes={};var Wu=[],Zu=null,$u=null;function Yu(){$u&&($u=null,document.body&&null!=Zu&&(document.body.style.pointerEvents=Zu),Zu=null)}function Ku(){Yu(),Wu.forEach((function(e){return e.__resetIsScrolling()}))}function Xu(e){e.currentTarget===window&&null==Zu&&document.body&&(Zu=document.body.style.pointerEvents,document.body.style.pointerEvents="none"),function(){$u&&kc($u);var e=0;Wu.forEach((function(t){e=Math.max(e,t.props.scrollingResetTimeInterval)})),$u=Nc(Ku,e)}(),Wu.forEach((function(t){t.props.scrollElement===e.currentTarget&&t.__handleWindowScrollEvent()}))}function Ju(e,t){Wu.some((function(e){return e.props.scrollElement===t}))||t.addEventListener("scroll",Xu),Wu.push(e)}function Qu(e,t){(Wu=Wu.filter((function(t){return t!==e}))).length||(t.removeEventListener("scroll",Xu),$u&&(kc($u),Yu()))}var ed,td,nd=function(e){return e===window},rd=function(e){return e.getBoundingClientRect()};function ad(e,t){if(e){if(nd(e)){var n=window,r=n.innerHeight,a=n.innerWidth;return{height:"number"==typeof r?r:0,width:"number"==typeof a?a:0}}return rd(e)}return{height:t.serverHeight,width:t.serverWidth}}function od(e){return nd(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 id(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 sd=function(){return"undefined"!=typeof window?window:void 0},ld=(td=ed=function(e){function t(){var e,n;Vl(this,t);for(var r=arguments.length,a=new Array(r),o=0;o0&&void 0!==arguments[0]?arguments[0]:this.props.scrollElement,t=this.props.onResize,n=this.state,r=n.height,a=n.width,i=this._child||o.findDOMNode(this);if(i instanceof Element&&e){var s=function(e,t){if(nd(t)&&document.documentElement){var n=document.documentElement,r=rd(e),a=rd(n);return{top:r.top-a.top,left:r.left-a.left}}var o=od(t),i=rd(e),s=rd(t);return{top:i.top+o.top-s.top,left:i.left+o.left-s.left}}(i,e);this._positionFromTop=s.top,this._positionFromLeft=s.left}var l=ad(e,this.props);r===l.height&&a===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=Gc(),this.updatePosition(e),e&&(Ju(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),Qu(this,r),Ju(this,n),this._unregisterResizeListener(r),this._registerResizeListener(n))}},{key:"componentWillUnmount",value:function(){var e=this.props.scrollElement;e&&(Qu(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,a=t.scrollLeft,o=t.height,i=t.width;return e({onChildScroll:this._onChildScroll,registerChild:this._registerChild,height:o,isScrolling:n,scrollLeft:a,scrollTop:r,width:i})}}]),t}(),ec(ed,"propTypes",null),td);ec(ld,"defaultProps",{onResize:function(){},onScroll:function(){},scrollingResetTimeInterval:150,scrollElement:sd(),serverHeight:0,serverWidth:0});var cd=ut,ud=Xe,dd=dt,pd=Ye((function(e){return"string"==typeof e||!ud(e)&&dd(e)&&"[object String]"==cd(e)})),hd=function(e,t){return function(n){return e(t(n))}}(Object.getPrototypeOf,Object),md=ut,fd=hd,gd=dt,bd=Function.prototype,yd=Object.prototype,vd=bd.toString,Ed=yd.hasOwnProperty,wd=vd.call(Object),Sd=Ye((function(e){if(!gd(e)||"[object Object]"!=md(e))return!1;var t=fd(e);if(null===t)return!0;var n=Ed.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&vd.call(n)==wd})),Ad=["view","edit","delete","description","share","cloud","console","download","disable","format","preview"],_d=function(e){var t,n=e.type,a=e.onClick,o=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?o[i]:o,h=(t=n,Ad.includes(t)?function(e){switch(e){case"view":case"preview":return r.createElement(xo,null);case"edit":return r.createElement(no,null);case"delete":return r.createElement(Ii,null);case"description":return r.createElement(wi,null);case"share":return r.createElement(to,null);case"cloud":return r.createElement(ol,null);case"console":return r.createElement(ps,null);case"download":return r.createElement(ki,null);case"disable":return r.createElement(il,null);case"format":return r.createElement(sl,null)}return null}(n):n),m=r.createElement(Gl,{type:"button","aria-label":"string"==typeof n?n:"",size:"30px",sx:{margin:"0 8px"},disabled:u,onClick:a?function(e){e.stopPropagation(),u?e.preventDefault():a(p)}:function(){return null}},h);return d&&""!==d&&(m=r.createElement(qa,{tooltip:d},m)),a?m:null},Td=a.Ay.div((function(e){var t=e.theme,n=e.sx,r=e.withBorders,a=e.customBorderPadding,o=e.useBackground,i={};return r&&(i={border:"".concat(Wn(t,"borderColor","#eaeaea")," 1px solid"),borderRadius:2,padding:a||15}),Ve(Ve({backgroundColor:o?Wn(t,"boxBackground","#FBFAFA"):"transparent"},i),n)})),Cd=function(e){var t=e.sx,n=e.children,a=e.customBorderPadding,o=qe(e,["sx","children","customBorderPadding"]);return r.createElement(Td,Ve({},o,{sx:t,customBorderPadding:a}),n)},xd=et,Id=/\s/,Od=function(e){for(var t=e.length;t--&&Id.test(e.charAt(t)););return t},kd=/^\s+/,Nd=vt,Rd=mt,Md=/^[-+]0x[0-9a-f]+$/i,Ld=/^0b[01]+$/i,Dd=/^0o[0-7]+$/i,Pd=parseInt,Bd=vt,Fd=function(){return xd.Date.now()},jd=function(e){if("number"==typeof e)return e;if(Rd(e))return NaN;if(Nd(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=Nd(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=function(e){return e?e.slice(0,Od(e)+1).replace(kd,""):e}(e);var n=Ld.test(e);return n||Dd.test(e)?Pd(e.slice(2),n?2:8):Md.test(e)?NaN:+e},zd=Math.max,Ud=Math.min,Hd=Ye((function(e,t,n){var r,a,o,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,o=a;return r=a=void 0,c=t,i=e.apply(o,n)}function m(e){var n=e-l;return void 0===l||n>=t||n<0||d&&e-c>=o}function f(){var e=Fd();if(m(e))return g(e);s=setTimeout(f,function(e){var n=t-(e-l);return d?Ud(n,o-(e-c)):n}(e))}function g(e){return s=void 0,p&&r?h(e):(r=a=void 0,i)}function b(){var e=Fd(),n=m(e);if(r=arguments,a=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=jd(t)||0,Bd(n)&&(u=!!n.leading,o=(d="maxWait"in n)?zd(jd(n.maxWait)||0,t):o,p="trailing"in n?!!n.trailing:p),b.cancel=function(){void 0!==s&&clearTimeout(s),c=0,r=l=a=s=void 0},b.flush=function(){return void 0===s?i:g(Fd())},b})),Gd=a.Ay.div((function(e){return{position:"fixed",top:0,left:0,width:"100vw",height:"100vh",backgroundColor:"transparent",zIndex:5e3,overscrollBehavior:"contain"}})),Vd=function(e){var t=e.children,n=qe(e,["children"]);return r.createElement(Gd,Ve({},n),t)},qd=a.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)})),Wd=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}},Zd=function(e){var t=e.columns,n=e.selectedOptionIDs,a=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?Wd(c):null)}),[s]),(0,r.useEffect)((function(){var e=Hd((function(e){e&&e.getBoundingClientRect()&&p(Wd(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,o.createPortal)(r.createElement(Vd,{onClick:i},r.createElement(qd,{sx:d,onClick:function(e){e.preventDefault(),e.stopPropagation()}},r.createElement(Cd,{className:"columnsSelectorTitle"},"Shown Columns"),r.createElement(Cd,{className:"columnsSelectorContainer"},t.map((function(e){return r.createElement(Ul,{key:"tableColumns-".concat(e.label),label:e.label,checked:n.findIndex((function(t){return t===e.elementKey}))>=0,onChange:function(){a(e.elementKey||"")},id:"chbox-".concat(e.label),name:"chbox-".concat(e.label),value:e.label})}))))),document.body)):null},$d=a.Ay.div((function(e){var t=e.theme,n=e.customPaperHeight,r=e.disabled;e.noBackground;var a=e.sx,o=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:o,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}},a)})),Yd={deleted:{color:"#00000080",backgroundColor:"#f1f0f040","&.selected":{color:"#b2b2b270"}}},Kd=function(e){var t=e.itemActions,n=e.columns,a=e.onSelect,o=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,ae=void 0;B&&(Q?(ne=B.onSortClick,re=B.currentSort,ae=B.currentDirection):(ne=function(e){var t=Wn(e,"sortDirection","DESC");V(e.sortBy),Z(t),F&&F(e)},re=G,ae=W));var oe=o;return B&&G&&!Q&&(oe=function(e,t,n){var r=e;if(0===e.length)return e;if(Sd(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}(o,G,W)),r.createElement(qr,{item:!0,xs:12,className:R},r.createElement($d,{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(Da,null))),v&&!i&&oe.length>0&&r.createElement(r.Fragment,null,function(e){return r.createElement(Cd,{sx:{margin:"10px 0 0",display:"flex",justifyContent:"flex-end"}},r.createElement(hr,{id:"columns-selector",variant:"regular",icon:r.createElement(nl,null),iconLocation:"end",onClick:ee},"Columns"),z&&r.createElement(Zd,{open:z,closeTriggerAction:te,onSelect:function(e){return T(e)},columns:e,selectedOptionIDs:A,anchorEl:Y}))}(n)),oe&&!i&&oe.length>0?r.createElement(iu,{isRowLoaded:function(e){var t=e.index;return!!oe[t]},loadMoreRows:C?C.loadMoreRecords:function(){return new Promise((function(){return!0}))},rowCount:C?C.recordsCount:oe.length},(function(e){var o=e.onRowsRendered,i=e.registerChild;return r.createElement(Wc,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=!(!a||!u),y=!!(t&&t.length>1||t&&1===t.length&&"view"!==t[0].type);return r.createElement(qu,{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:oe.length,rowGetter:function(e){var t=e.index;return oe[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:o,sort:ne,sortBy:re,sortDirection:ae,scrollToIndex:I?oe.length-1:-1,rowStyle:function(e){if(k){var t=k(e);return"string"==typeof t?Wn(Yd,t,{}):t}return{}}},b&&r.createElement(Hu,{headerRenderer:function(){return r.createElement(r.Fragment,null,O?r.createElement("div",{className:"checkAllWrapper"},r.createElement(Ul,{label:"",onChange:O,value:"all",id:"selectAll",name:"selectAll",checked:(null==u?void 0:u.length)===oe.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(pd(t)?t:"".concat(t[X]));return r.createElement(Ul,{value:pd(t)?t:"".concat(t[X]),color:"primary",className:"TableCheckbox",checked:n,onChange:a,onClick:function(e){e.stopPropagation()}})}}),function(e,t,n,a,o,i,s,l,c,u,d,p){var h=u&&"object"==typeof u&&!Array.isArray(u),m=function(e,t,n,r,a,o,i){if(e){var s=We([],e,!0);o&&(s=e.filter((function(e){return i.includes(e.elementKey)})));var l=t;return r&&(l-=45),a&&(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,a,o,l,c);return e.map((function(t,n){if(l&&!c.includes(t.elementKey))return null;var a=void 0===t.enableSort||t.enableSort,o=!u||h&&!a||Array.isArray(u)&&!u.includes((null==t?void 0:t.elementKey)||"");return r.createElement(Hu,{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(Cd,{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(rl,null):r.createElement(al,null)):null):null,r.createElement(Cd,{sx:{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}},t.label))},className:t.contentTextAlign?"text-".concat(t.contentTextAlign):"",cellRenderer:function(e){var n=e.rowData,a=!!i&&i.includes(pd(n)?n:"".concat(n[s]));return function(e,t,n){var a=pd(e)?e:Wn(e,t.elementKey||"",null),o=t.renderFullObject?e:a,i=t.renderFunction?t.renderFunction(o):o;return r.createElement(r.Fragment,null,r.createElement("span",{className:n?"selected":""},i))}(n,t,a)},width:t.width||m,disableSort:o,defaultSortDirection:"ASC"})}))}(n,m,g,b,y,u||[],X,v,A,B,re||"",ae),y&&r.createElement(Hu,{dataKey:"column-options",width:g,headerClassName:"optionsAlignment",className:"optionsAlignment",cellRenderer:function(e){var n=e.rowData,a=!!u&&u.includes(pd(n)?n:"".concat(n[X]));return function(e,t,n,a){return e.map((function(e,o){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(Da,{style:{width:18,height:18},key:"actions-loader-".concat(e.type,"-").concat(o.toString())})):r.createElement(_d,{tooltip:e.tooltip,type:e.type,onClick:e.onClick,valueToSend:t,selected:n,key:"actions-".concat(e.type,"-").concat(o.toString()),idField:a,sendOnlyId:!!e.sendOnlyId,disabled:i})}))}(t||[],n,a,X)}}))}))})):r.createElement(r.Fragment,null,!i&&r.createElement("div",{id:"empty-results"},""!==h?h:"There are no ".concat(c||"items"," yet.")))))},Xd=a.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)})),Jd=function(e){var t=e.label,n=e.sx,a=qe(e,["label","sx"]);return r.createElement(Xd,Ve({sx:n},a),r.createElement("span",{className:"icon"},r.createElement(mi,null)),r.createElement("span",{className:"label"},t))},Qd=a.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}}})),ep=function(e){var t=e.iconComponent,n=e.title,a=e.help;return r.createElement(Qd,{className:"helpbox-container"},r.createElement(qr,{container:!0},r.createElement(qr,{item:!0,xs:12,className:"leftItems"},t||null,n),a&&r.createElement(qr,{item:!0,xs:12,className:"helpText"},a)))},tp=a.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)})),np=function(e){var t=e.separator,n=e.icon,a=e.children,o=e.actions,i=e.sx;return r.createElement(tp,{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,a)),o&&r.createElement(qr,{item:!0,xs:!0,sx:{display:"flex",justifyContent:"flex-end",marginRight:"10px"}}," ",o))},rp=function(e){var t,n=e.children,a=e.title,o=void 0===a?"":a,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(Cd,{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(Cd,null,""!==o&&r.createElement(np,{icon:l,sx:{marginBottom:16}},o),n),s)},ap=a.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)})),op=function(e){var t=e.sx,n=e.children,a=e.variant,o=e.className,i=qe(e,["sx","children","variant","className"]);return r.createElement(ap,Ve({sx:t,variant:a},i),r.createElement(qr,{container:!0},r.createElement(qr,{item:!0,xs:12,className:o},n)))},ip=a.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")}})),sp=a.Ay.div((function(e){var t,n=e.horizontal,r=e.mobileModeAuto,a=e.sx,o={};return r&&((t={})["@media (max-width: ".concat(Wn(i,"md",0),"px)")]={flexDirection:"column"},o=t),Ve(Ve({display:"flex",flexDirection:n?"column":"row"},o),a)})),lp=function(e){var t=e.children,n=e.menu,a=e.horizontal,o=e.mobileModeAuto,i=void 0===o||o,s=e.sx;return r.createElement(sp,{className:"parentBox",horizontal:a,mobileModeAuto:i,sx:s},n&&(0,r.cloneElement)(n,{mobileModeAuto:i}),r.createElement(ip,{horizontal:a,className:"mainPage"},t))},cp=a.Ay.input((function(e){var t=e.theme,n=e.error,r=e.startIcon,a=e.overlayIcon,o=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:a||o||"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")}}}})),up=a.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)})),dp=function(e){var t=e.id,n=e.tooltip,a=void 0===n?"":n,o=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(cl,null):r.createElement(ll,null),C=A?"text":"password"),r.createElement(up,{error:!!b&&""!==b,sx:y,className:"inputItem ".concat(g)},""!==h&&r.createElement(Bl,{htmlFor:t,noMinWidth:l,className:"inputLabel",helpTip:v,helpTipPlacement:E},h,m?"*":"",""!==a&&r.createElement(Cd,{className:"tooltipContainer"},r.createElement(qa,{tooltip:a,placement:"top"},r.createElement(Cd,{className:a},r.createElement(Wo,null))))),r.createElement(Cd,{className:"textBoxContainer"},f&&r.createElement(Cd,{className:"startOverlayIcon"},f),r.createElement(cp,Ve({id:t,fullWidth:!0,type:C,error:b,className:"inputRebase","data-index":o,startIcon:f,overlayObject:d,overlayIcon:s,originType:i},w)),T&&r.createElement(Cd,{className:"overlayAction"},r.createElement(Gl,{onClick:u?function(){u()}:function(){return _(!A)},id:c,size:"25px",type:"button"},T)),d&&r.createElement(Cd,{className:"overlayAction"},d),""!==b&&r.createElement(Cd,{className:"errorText"},b)))},pp=a.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)})),hp=function(e){var t=e.sx,n=e.children,a=e.additionalOptions,o=e.goBackFunction;return r.createElement(pp,{className:"breadcrumbs-bar",sx:t},r.createElement(Gl,{onClick:o,className:"backButton"},r.createElement(fs,null)),r.createElement(Cd,{className:"breadcrumbsList",dir:"rtl"},n),a)},mp=a.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}}})),fp=function(e){var t=e.icon,n=e.label,a=qe(e,["icon","label"]);return r.createElement(mp,Ve({},a),t,n)},gp=a.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)})),bp=function(e){var t=e.sx,n=e.items,a=e.title;return r.createElement(gp,{sx:t},r.createElement("div",{className:"titleLabel"},a),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(qa,{tooltip:e.tooltip||""},r.createElement(fp,{label:e.label,icon:e.icon,onClick:e.action,disabled:e.disabled,style:{pointerEvents:e.disabled?"none":"initial"}})))}))))},yp=a.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)})),vp=function(e){var t=e.label,n=e.icon,a=e.sx;return r.createElement(yp,{className:"simpleHeader-container",sx:a},r.createElement("span",null,t),n)},Ep=a.Ay.div((function(e){var t,n=e.theme,r=e.sx,a=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:a?"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)})),wp=function(e){var t=e.icon,n=e.subTitle,a=void 0===n?"":n,o=e.title,i=e.actions,s=e.bottomBorder,l=void 0===s||s,c=e.sx;return r.createElement(Ep,{className:"screenTitle-container",sx:c,bottomBorder:l},r.createElement(Cd,{className:"stContainer"},r.createElement(Cd,{className:"leftItems"},t?r.createElement(Cd,{className:"headerBarIcon"},t):null,r.createElement(Cd,{className:"titleColumn"},r.createElement("h1",{style:{margin:0}},o),r.createElement("span",{className:"headerBarSubheader"},a))),r.createElement(Cd,{className:"rightItems"},i)))},Sp=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])},Ap=a.Ay.div((function(e){var t=e.theme,n=e.backgroundOverlay,r=e.widthLimit,a=e.iconColor,o=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?o:"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(a),"#07193E")}}},"& .dialogContent":{maxHeight:"calc(100vh - 150px)",overflowY:"auto"}}})),_p=function(e){var t=e.onClose,n=e.open,a=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;Sp(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(Ap,{widthLimit:l,backgroundOverlay:d,iconColor:h,customMaxWidth:f,sx:g,className:"modalBoxMain"},r.createElement(Cd,{className:"overlay ".concat(y?"active":"")},r.createElement(Cd,{className:"modalContainer"},r.createElement(Cd,{className:"modalTitleBar"},r.createElement(Cd,{className:"title"},c,a),r.createElement("button",{className:"closeModalButton",id:"close",onClick:t},r.createElement(As,null))),r.createElement(Cd,{className:"dialogContent"},i))));return(0,o.createPortal)(E,document.body)},Tp=a.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"}})),Cp=a.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")}}}}})),xp=a.Ay.div((function(){return{display:"flex",alignItems:"center"}})),Ip=a.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)})),Op=function(e){var t=e.tooltip,n=e.label,a=e.id,o=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(xp,null,!s&&r.createElement(Tp,{active:!u},l&&l.length>1?l[1]:"OFF"),r.createElement(Cp,{id:"".concat(a,"-switch")},r.createElement("input",Ve({type:"checkbox",id:a,checked:u},h)),r.createElement("span",{className:"switchRail"})),!s&&r.createElement(Tp,{active:!!u},l?l[0]:"ON"));return s?m:r.createElement(Ip,{className:"inputItem ".concat(i||""),sx:o},r.createElement(jl,{className:"inputBase"},""!==n&&r.createElement(Bl,{htmlFor:a,noMinWidth:!0,helpTip:d,helpTipPlacement:p},n,t&&""!==t&&r.createElement("div",{className:"tooltipContainer"},r.createElement(qa,{tooltip:t,placement:"top"},r.createElement(Wo,null)))),m),c&&r.createElement(Cd,{className:"actionDescription"},c))},kp=a.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)})),Np=a.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")}}})),Rp=function(e,t,n){if(!e)return{top:0,left:0,width:0};var r=e.getBoundingClientRect(),a={top:r.top+r.height};return"start"===t?(a.left=r.left,a.transform="translateX(0%)"):"end"===t&&(a.left=r.left+r.width,a.transform="translateX(-100%)"),n&&(a.width=r.width),a},Mp=function(e){var t,n,a=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]),Sp(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?Rp(h,b,f):null)}),[d]),(0,r.useEffect)((function(){var e=Hd((function(e){e&&e.getBoundingClientRect()&&E(Rp(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,o.createPortal)(r.createElement(Vd,{onClick:u},r.createElement(kp,{id:a,sx:v,useAnchorWidth:f},i.map((function(e,t){return r.createElement(Np,{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(Cd,{className:"truncate"},e.label),e.indicator)})))),document.body)):null},Lp=a.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}}})),Dp=a.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)})),Pp=function(e){var t=e.id,n=e.label,a=void 0===n?"":n,o=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(Dp,{sx:h,className:"inputItem ".concat(i||"")},""!==a&&r.createElement(Bl,{htmlFor:t,noMinWidth:u,className:"inputLabel",helpTip:A,helpTipPlacement:_},a,o?"*":"",""!==l&&r.createElement(Cd,{className:"tooltipContainer"},r.createElement(qa,{tooltip:l,placement:"top"},r.createElement(Cd,{className:l},r.createElement(Wo,null))))),r.createElement(Cd,{id:"".concat(t,"-select"),className:"selectContainer",onClick:function(e){b||(x(!C),k(e.currentTarget))}},r.createElement(Lp,{className:b?"disabled":""},r.createElement(Cd,{sx:{display:"flex",columnGap:8,width:"calc(100% - 16px)"}},(null==N?void 0:N.icon)&&r.createElement(Cd,{className:"indicatorContainer"},null==N?void 0:N.icon),r.createElement(Cd,{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(Cd,{className:"indicatorContainer"},null==N?void 0:N.indicator)),r.createElement(Cd,{sx:{display:"flex",width:16}},C?r.createElement(qs,null):r.createElement(Ws,null))),r.createElement("input",{type:"hidden",id:t,name:E,value:p})),C&&r.createElement(Mp,{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}))},Bp=a.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)})),Fp=a.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"}}}})),jp=a.Ay.div((function(e){return{display:"flex",alignItems:"center",gap:5}})),zp=function(e){var t=e.tooltip,n=e.label,a=e.id,o=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(jl,{className:"inputItem ".concat(s||""),sx:{display:"flex",justifyContent:"flex-start",alignItems:"center",flexBasis:"initial",flexWrap:"nowrap"}},""!==n&&r.createElement(Bl,{htmlFor:a,noMinWidth:!0,helpTip:f,helpTipPlacement:g},n,t&&""!==t&&r.createElement("div",{className:"tooltipContainer"},r.createElement(qa,{tooltip:t,placement:"top"},r.createElement(Wo,null)))),r.createElement(Fp,{inColumn:m},c&&r.createElement(r.Fragment,null,c.map((function(e){return r.createElement(jp,{key:"option-".concat(a,"-").concat(e.value)},r.createElement(Bp,{htmlFor:"option-".concat(a,"-").concat(e.value),sx:o},r.createElement("input",{type:"radio",name:l,id:"option-".concat(a,"-").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(a,"-").concat(e.value),className:"optionLabel ".concat(u===e.value?"checked":""," ").concat(p||e.disabled?"disabled":"")},e.label))})))))},Up=a.Ay.div((function(e){var t=e.theme,n=e.sx,r=e.label,a=e.multiLine;return Ve({display:"flex",width:""===r||a?"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)})),Hp=function(e){var t=e.label,n=void 0===t?"":t,a=e.children,o=e.multiLine,i=e.actionButton,s=e.sx,l=e.helpTip,c=e.helpTipPlacement;return r.createElement(Up,{className:"inputItem",label:n,multiLine:o,sx:s},""!==n&&r.createElement(Bl,{className:"inputLabel",helpTip:l,helpTipPlacement:c},n),r.createElement(Cd,{className:"predefinedList ".concat(i?"includesActionButton":"")},r.createElement(Cd,{className:o?"innerContentMultiline":"innerContent"},a),i&&r.createElement(Cd,{className:"overlayShareOption"},i)))},Gp=a.Ay.textarea((function(e){var t=e.theme,n=e.error;e.originType;var r=Wn(t,"inputBox.border","#E2E2E2"),a=Wn(t,"inputBox.hoverBorder","#000110");return n&&""!==n&&(r=Wn(t,"inputBox.error","#C51B3F"),a=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:a},"&:focus":{borderColor:a},"&: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")}}}})),Vp=a.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)})),qp=function(e){var t=e.id,n=e.tooltip,a=void 0===n?"":n,o=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(Vp,{error:!!d&&""!==d,sx:p,className:"inputItem ".concat(u)},""!==l&&r.createElement(Bl,{htmlFor:t,noMinWidth:i,className:"inputLabel",helpTip:h,helpTipPlacement:m},l,c?"*":"",""!==a&&r.createElement(Cd,{className:"tooltipContainer"},r.createElement(qa,{tooltip:a,placement:"top"},r.createElement(Cd,{className:a},r.createElement(Wo,null))))),r.createElement(Cd,{className:"textBoxContainer"},r.createElement(Gp,Ve({id:t,fullWidth:!0,error:d,className:"inputRebase","data-index":o,rows:5},f)),""!==d&&r.createElement(Cd,{className:"errorText"},d)))},Wp=a.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")}}}}}})),Zp=function(e){var t=e.open,n=e.anchorEl,a=e.hideTriggerAction,o=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=Hd((function(e){e&&e.getBoundingClientRect()&&l(u(e))}),300);window.addEventListener("resize",(function(){a()})),window.addEventListener("scroll",(function(){e(n)}))})),t&&n&&s?r.createElement(Wp,{onClick:a},r.createElement(Cd,{className:"subItemsBox",sx:Ve({},s)},o)):null},$p=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")}}}},Yp=a.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}}})),Kp=a.Ay.button((function(e){var t=e.theme;return Ve(Ve({},$p(t)),{"& .subOption":{padding:0}})})),Xp=a.Ay.a((function(e){var t=e.theme;return Ve(Ve({},$p(t)),{textDecoration:"none"})})),Jp=a.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}}})),Qp=function(e){var t=e.icon,n=e.name,a=e.badge;return r.createElement(Jp,{className:"option"},r.createElement("span",{className:"iconContainer"},t,a&&r.createElement(io,{className:"badgeIcon"})),r.createElement("span",{className:"labelContainer"},n))},eh=function(e){var t=e.children,n=e.icon,a=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(Yp,null,r.createElement(Kp,{id:a,type:"button",onClick:function(e){e.stopPropagation(),f(!0),y(e.currentTarget)},className:"menuItemButton ".concat(m?"selected":"")},r.createElement(Qp,{icon:n,name:i,badge:!!c}),r.createElement(Cd,{className:"statusArrow"},m?r.createElement(qs,null):r.createElement(Ws,null))),m&&(0,o.createPortal)(r.createElement(Zp,{anchorEl:b,hideTriggerAction:function(){f(!1),y(null)},open:m},t.map((function(e){return r.createElement(eh,{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(Xp,{className:"menuItemButton",id:a,href:s,target:"_blank"},r.createElement(Qp,{icon:n,name:i,badge:!!c})):r.createElement(Kp,{className:"menuItemButton ".concat(v?"selected":""),type:"button",id:a,onClick:function(){l&&l(s||"")}},r.createElement(Qp,{icon:n,name:i,badge:!!c}))},th=a.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)})),nh=function(e){var t=e.applicationLogo,n=e.options,a=e.signOutAction,o=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(th,{className:"menuBox",sx:c},r.createElement(Cd,{className:"headerBar"},r.createElement(Gr,Ve({inverse:u},t)),i,r.createElement(Cd,{className:"endComponent"},s,a&&r.createElement(Gl,{id:"sign-out",onClick:a},r.createElement($i,null)))),r.createElement(Cd,{className:"sections ".concat(n&&0!==n.length?"":"compact")},n&&n.map((function(e){return r.createElement(eh,{key:"menu-section-".concat(e.group,"-").concat(e.id),onClick:function(t){e.onClick&&e.onClick(t),o(t)},icon:e.icon,name:e.name,group:e.group,id:e.id,path:e.path,currentPath:l,badge:e.badge,children:e.children})}))))},rh=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")}}}},ah=a.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}}})),oh=a.Ay.button((function(e){var t=e.theme;return Ve(Ve({},rh(t)),{"& .subOption":{padding:0}})})),ih=a.Ay.a((function(e){var t=e.theme;return Ve(Ve({},rh(t)),{textDecoration:"none"})})),sh=a.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}}})),lh=function(e){var t=e.icon,n=e.name,a=e.badge;return r.createElement(sh,{className:"option"},r.createElement("span",{className:"iconContainer"},t,a&&r.createElement(io,{className:"badgeIcon"})),r.createElement("span",{className:"labelContainer"},n))},ch=function(e){var t=e.children,n=e.icon,a=e.id,o=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(ah,null,r.createElement(qa,{tooltip:d?o:"",placement:"right"},r.createElement(oh,{id:a,type:"button",onClick:function(){g(!f)},className:"menuItemButton"},r.createElement(lh,{icon:n,name:o,badge:!!l}),r.createElement(Cd,{className:"statusArrow"},f?r.createElement(qs,null):r.createElement(Ws,null)))),f&&r.createElement(Cd,{className:"subItemsBox"},t.map((function(e){return r.createElement(qa,{tooltip:d?e.name:"",placement:"right"},r.createElement(ch,{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(qa,{tooltip:d?o:"",placement:"right"},r.createElement(ih,{className:"menuItemButton",id:a,href:i,target:"_blank"},r.createElement(lh,{icon:n,name:o,badge:!!l}))):r.createElement(qa,{tooltip:d?o:"",placement:"right"},r.createElement(oh,{className:"menuItemButton ".concat(b?"selected":""),type:"button",id:a,onClick:function(){s&&s(i||"")}},r.createElement(lh,{icon:n,name:o,badge:!!l})))},uh=a.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"}}})),dh=function(e){var t=e.label,n=e.divider;return r.createElement(uh,{className:"menuHeader",divider:n},r.createElement("span",{className:"labelHeader"},t))},ph=a.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)})),hh=function(e){var t=e.applicationLogo,n=e.options,a=e.displayGroupTitles,o=e.signOutAction,i=e.callPathAction,s=e.isOpen,l=e.collapseAction,c=e.currentPath,u=e.endComponent,d=e.sx,p="";return r.createElement(ph,{sx:d,className:"menuBox ".concat(s?"":"collapsed")},r.createElement(Cd,{className:"menuContainer"},r.createElement(Cd,{className:"menuHeaderContainer",onClick:l},r.createElement(Cd,{className:"collapseButton"},r.createElement(pl,null)),r.createElement(Cd,{className:"menuLogoContainer"},r.createElement(Gr,Ve({inverse:!0},t))),r.createElement(Cd,{className:"collapsedMenuHeader"},r.createElement(qa,{tooltip:"Expand Menu",placement:"right"},r.createElement("span",{className:"collapsedIcon"},r.createElement(ho,null))))),r.createElement(Cd,{className:"menuItems"},n&&n.map((function(e){var t=null;return a&&e.group&&p!==e.group&&(p=e.group,t=r.createElement(dh,{label:e.group})),r.createElement(r.Fragment,{key:"menu-section-".concat(e.group||"common","-").concat(e.id||e.name)},t,r.createElement(ch,{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}))})),o&&r.createElement(Cd,{sx:{marginTop:"auto"}},u,r.createElement(dh,{label:""}),r.createElement(ch,{id:"sign-out",group:"common",name:"Sign Out",icon:r.createElement($i,null),onClick:o,visibleTooltip:!s})))))},mh=a.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)})),fh=function(e){var t=e.applicationLogo,n=e.options,a=e.displayGroupTitles,o=e.signOutAction,i=e.callPathAction,s=e.collapseAction,l=e.currentPath,c=e.endComponent,u="";return r.createElement(mh,null,r.createElement(Cd,{className:"menuContainer"},r.createElement(Cd,{className:"menuHeaderContainer",onClick:s},r.createElement(Cd,{className:"collapseButton"},r.createElement(As,null)),r.createElement(Cd,{className:"menuLogoContainer"},r.createElement(Gr,Ve({inverse:!0},t))),r.createElement(Cd,{className:"collapsedMenuHeader"},r.createElement(qa,{tooltip:"Expand Menu"},r.createElement("span",{className:"collapsedIcon"},r.createElement(ho,null))))),r.createElement(Cd,{className:"menuItems"},n&&n.map((function(e){var t=null;return a&&e.group&&u!==e.group&&(u=e.group,t=r.createElement(dh,{label:e.group})),r.createElement(r.Fragment,{key:"menu-section-".concat(e.group,"-").concat(e.id)},t,r.createElement(ch,{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}))})),o&&r.createElement(Cd,{sx:{marginTop:"auto"}},c,r.createElement(dh,{label:""}),r.createElement(ch,{group:"common",name:"Sign Out",icon:r.createElement($i,null),onClick:o})))))},gh=a.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)})),bh=function(e){var t=e.applicationLogo,n=e.options,a=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(gh,{className:"menuBox",sx:d},r.createElement(Cd,{className:"headerBar"},r.createElement(Gr,Ve({inverse:!0},t)),r.createElement(Gl,{id:"menu-open",onClick:function(){m(!0)}},r.createElement(zi,null))),l&&r.createElement(Cd,null,"middleComponent"),r.createElement(Cd,{className:"menuOpen"})),h&&(0,o.createPortal)(r.createElement(fh,{options:n,applicationLogo:t,callPathAction:s,isOpen:h,collapseAction:function(){m(!1)},signOutAction:i,displayGroupTitles:a,currentPath:c,endComponent:u}),document.body))},yh=function(e){var t=e.horizontal,n=void 0!==t&&t,a=e.mobileModeAuto,o=void 0===a||a,s=qe(e,["horizontal","mobileModeAuto"]),l=(0,r.useState)(!1),c=l[0],u=l[1];return(0,r.useEffect)((function(){var e=Hd((function(){var e=document.documentElement.offsetWidth;u(e<=i.md)}),400);window.addEventListener("resize",e)})),c&&o?r.createElement(bh,Ve({},s)):n?r.createElement(nh,Ve({},s)):(s.middleComponent&&console.warn("Middle component is set, this cannot be rendered in Vertical Menu"),r.createElement(hh,Ve({},s)))},vh=a.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)})),Eh=function(e){var t=e.open,n=e.label,a=e.sx,o=qe(e,["open","label","sx"]);return r.createElement(vh,Ve({sx:a},o),n,t?r.createElement(qs,null):r.createElement(Ws,null))},wh=function(e){var t=e.selectedTab,n=e.useRouteTabs,a=e.id,o=e.children;return n||t===a?r.createElement(Cd,{id:a},o):null},Sh=a.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")}}})),Ah=function(e){var t=e.horizontal,n=e.id,a=e.onClick,o=e.label,i=e.disabled,s=e.icon,l=e.selected;return r.createElement(Sh,{horizontal:!!t,id:n,onClick:function(){return a()},disabled:i,className:"".concat(l?"selected":"")},s,o)},_h=a.Ay.div((function(e){var t=e.theme,n=e.horizontal,r=e.horizontalBarBackground,a=e.sx,o=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?o: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"}},a)})),Th=function(e){var t=e.horizontal,n=e.options,a=e.currentTabOrPath,o=e.useRouteTabs,i=void 0!==o&&o,s=e.routes,l=e.onTabClick,c=e.optionsInitialComponent,u=e.optionsEndComponent,d=e.horizontalBarBackground,p=e.sx;return r.createElement(_h,{className:"tabs-container",horizontal:!!t,horizontalBarBackground:!!d,sx:p},r.createElement(Cd,{className:"optionsContainer"},c&&r.createElement(Cd,null,c),r.createElement(Cd,{className:"optionsList"},n.map((function(e,n){return e?r.createElement(Ah,{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===a:e.tabConfig.id===a}):null}))),u&&r.createElement(Cd,null,u)),r.createElement(Cd,{className:"tabsPanels"},i?r.createElement(wh,{id:"routes-tab-container",useRouteTabs:!!i},s):n.map((function(e,t){return e.tabConfig.disabled?null:r.createElement(wh,{key:"v-tab-p-".concat(t),id:e.tabConfig.id,selectedTab:a,useRouteTabs:!!i},e?e.content:null)}))))};class Ch{constructor(e,t,n){this.property=e,this.normal=t,n&&(this.space=n)}}function xh(e,t){const n={},r={};let a=-1;for(;++a"xlink:"+t.slice(5).toLowerCase(),properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null}}),Wh=Vh({space:"xml",transform:(e,t)=>"xml:"+t.slice(3).toLowerCase(),properties:{xmlLang:null,xmlBase:null,xmlSpace:null}});function Zh(e,t){return t in e?e[t]:t}function $h(e,t){return Zh(e,t.toLowerCase())}const Yh=Vh({space:"xmlns",attributes:{xmlnsxlink:"xmlns:xlink"},transform:$h,properties:{xmlns:null,xmlnsXLink:null}}),Kh=Vh({transform:(e,t)=>"role"===t?t:"aria-"+t.slice(4).toLowerCase(),properties:{ariaActiveDescendant:null,ariaAtomic:Rh,ariaAutoComplete:null,ariaBusy:Rh,ariaChecked:Rh,ariaColCount:Lh,ariaColIndex:Lh,ariaColSpan:Lh,ariaControls:Dh,ariaCurrent:null,ariaDescribedBy:Dh,ariaDetails:null,ariaDisabled:Rh,ariaDropEffect:Dh,ariaErrorMessage:null,ariaExpanded:Rh,ariaFlowTo:Dh,ariaGrabbed:Rh,ariaHasPopup:null,ariaHidden:Rh,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:Dh,ariaLevel:Lh,ariaLive:null,ariaModal:Rh,ariaMultiLine:Rh,ariaMultiSelectable:Rh,ariaOrientation:null,ariaOwns:Dh,ariaPlaceholder:null,ariaPosInSet:Lh,ariaPressed:Rh,ariaReadOnly:Rh,ariaRelevant:null,ariaRequired:Rh,ariaRoleDescription:Dh,ariaRowCount:Lh,ariaRowIndex:Lh,ariaRowSpan:Lh,ariaSelected:Rh,ariaSetSize:Lh,ariaSort:null,ariaValueMax:Lh,ariaValueMin:Lh,ariaValueNow:Lh,ariaValueText:null,role:null}}),Xh=Vh({space:"html",attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},transform:$h,mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:Ph,acceptCharset:Dh,accessKey:Dh,action:null,allow:null,allowFullScreen:Nh,allowPaymentRequest:Nh,allowUserMedia:Nh,alt:null,as:null,async:Nh,autoCapitalize:null,autoComplete:Dh,autoFocus:Nh,autoPlay:Nh,blocking:Dh,capture:null,charSet:null,checked:Nh,cite:null,className:Dh,cols:Lh,colSpan:null,content:null,contentEditable:Rh,controls:Nh,controlsList:Dh,coords:Lh|Ph,crossOrigin:null,data:null,dateTime:null,decoding:null,default:Nh,defer:Nh,dir:null,dirName:null,disabled:Nh,download:Mh,draggable:Rh,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:Nh,formTarget:null,headers:Dh,height:Lh,hidden:Nh,high:Lh,href:null,hrefLang:null,htmlFor:Dh,httpEquiv:Dh,id:null,imageSizes:null,imageSrcSet:null,inert:Nh,inputMode:null,integrity:null,is:null,isMap:Nh,itemId:null,itemProp:Dh,itemRef:Dh,itemScope:Nh,itemType:Dh,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:Nh,low:Lh,manifest:null,max:null,maxLength:Lh,media:null,method:null,min:null,minLength:Lh,multiple:Nh,muted:Nh,name:null,nonce:null,noModule:Nh,noValidate:Nh,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:Nh,optimum:Lh,pattern:null,ping:Dh,placeholder:null,playsInline:Nh,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:Nh,referrerPolicy:null,rel:Dh,required:Nh,reversed:Nh,rows:Lh,rowSpan:Lh,sandbox:Dh,scope:null,scoped:Nh,seamless:Nh,selected:Nh,shadowRootClonable:Nh,shadowRootDelegatesFocus:Nh,shadowRootMode:null,shape:null,size:Lh,sizes:null,slot:null,span:Lh,spellCheck:Rh,src:null,srcDoc:null,srcLang:null,srcSet:null,start:Lh,step:null,style:null,tabIndex:Lh,target:null,title:null,translate:null,type:null,typeMustMatch:Nh,useMap:null,value:Rh,width:Lh,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:Dh,axis:null,background:null,bgColor:null,border:Lh,borderColor:null,bottomMargin:Lh,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:Nh,declare:Nh,event:null,face:null,frame:null,frameBorder:null,hSpace:Lh,leftMargin:Lh,link:null,longDesc:null,lowSrc:null,marginHeight:Lh,marginWidth:Lh,noResize:Nh,noHref:Nh,noShade:Nh,noWrap:Nh,object:null,profile:null,prompt:null,rev:null,rightMargin:Lh,rules:null,scheme:null,scrolling:Rh,standby:null,summary:null,text:null,topMargin:Lh,valueType:null,version:null,vAlign:null,vLink:null,vSpace:Lh,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:Nh,disableRemotePlayback:Nh,prefix:null,property:null,results:Lh,security:null,unselectable:null}}),Jh=Vh({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:Zh,properties:{about:Bh,accentHeight:Lh,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:Lh,amplitude:Lh,arabicForm:null,ascent:Lh,attributeName:null,attributeType:null,azimuth:Lh,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:Lh,by:null,calcMode:null,capHeight:Lh,className:Dh,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:Lh,diffuseConstant:Lh,direction:null,display:null,dur:null,divisor:Lh,dominantBaseline:null,download:Nh,dx:null,dy:null,edgeMode:null,editable:null,elevation:Lh,enableBackground:null,end:null,event:null,exponent:Lh,externalResourcesRequired:null,fill:null,fillOpacity:Lh,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:Ph,g2:Ph,glyphName:Ph,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:Lh,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:Lh,horizOriginX:Lh,horizOriginY:Lh,id:null,ideographic:Lh,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:Lh,k:Lh,k1:Lh,k2:Lh,k3:Lh,k4:Lh,kernelMatrix:Bh,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:Lh,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:Lh,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:Lh,overlineThickness:Lh,paintOrder:null,panose1:null,path:null,pathLength:Lh,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:Dh,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:Lh,pointsAtY:Lh,pointsAtZ:Lh,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:Bh,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:Bh,rev:Bh,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:Bh,requiredFeatures:Bh,requiredFonts:Bh,requiredFormats:Bh,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:Lh,specularExponent:Lh,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:Lh,strikethroughThickness:Lh,string:null,stroke:null,strokeDashArray:Bh,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:Lh,strokeOpacity:Lh,strokeWidth:null,style:null,surfaceScale:Lh,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:Bh,tabIndex:Lh,tableValues:null,target:null,targetX:Lh,targetY:Lh,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:Bh,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:Lh,underlineThickness:Lh,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:Lh,values:null,vAlphabetic:Lh,vMathematical:Lh,vectorEffect:null,vHanging:Lh,vIdeographic:Lh,version:null,vertAdvY:Lh,vertOriginX:Lh,vertOriginY:Lh,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:Lh,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null}}),Qh=/^data[-\w.:]+$/i,em=/-[a-z]/g,tm=/[A-Z]/g;function nm(e,t){const n=Ih(t);let r=t,a=Oh;if(n in e.normal)return e.property[e.normal[n]];if(n.length>4&&"data"===n.slice(0,4)&&Qh.test(t)){if("-"===t.charAt(4)){const e=t.slice(5).replace(em,am);r="data"+e.charAt(0).toUpperCase()+e.slice(1)}else{const e=t.slice(4);if(!em.test(e)){let n=e.replace(tm,rm);"-"!==n.charAt(0)&&(n="-"+n),t="data"+n}}a=Uh}return new a(r,t)}function rm(e){return"-"+e.toLowerCase()}function am(e){return e.charAt(1).toUpperCase()}const om=xh([Wh,qh,Yh,Kh,Xh],"html"),im=xh([Wh,qh,Yh,Kh,Jh],"svg");function sm(e){const t=[],n=String(e||"");let r=n.indexOf(","),a=0,o=!1;for(;!o;){-1===r&&(r=n.length,o=!0);const e=n.slice(a,r).trim();!e&&o||t.push(e),a=r+1,r=n.indexOf(",",a)}return t}function lm(e,t){const n=t||{};return(""===e[e.length-1]?[...e,""]:e).join((n.padRight?" ":"")+","+(!1===n.padLeft?"":" ")).trim()}const cm=/[#.]/g;function um(e){const t=String(e||"").trim();return t?t.split(/[ \t\n\r\f]+/g):[]}function dm(e){return e.join(" ").trim()}const pm=new Set(["button","menu","reset","submit"]),hm={}.hasOwnProperty;function mm(e,t,n){const r=n&&function(e){const t={};let n=-1;for(;++n2?s-2:0),c=2;c-1&&ee)return{line:t+1,column:e-(t>0?n[t-1]:0)+1,offset:e}},toOffset:function(e){const t=e&&e.line,r=e&&e.column;if("number"==typeof t&&"number"==typeof r&&!Number.isNaN(t)&&!Number.isNaN(r)&&t-1 in n){const e=(n[t-2]||0)+r-1||0;if(e>-1&&e=55296&&e<=57343}function Pm(e){return 32!==e&&10!==e&&13!==e&&9!==e&&12!==e&&e>=1&&e<=31||e>=127&&e<=159}function Bm(e){return e>=64976&&e<=65007||Om.has(e)}var Fm,jm;!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"}(Fm=Fm||(Fm={}));class zm{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,Nm.EOF;return this._err(Fm.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,Nm.EOF;const n=this.html.charCodeAt(t);return n===Nm.CARRIAGE_RETURN?Nm.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,Nm.EOF;let e=this.html.charCodeAt(this.pos);return e===Nm.CARRIAGE_RETURN?(this.isEol=!0,this.skipNextNewLine=!0,Nm.LINE_FEED):e===Nm.LINE_FEED&&(this.isEol=!0,this.skipNextNewLine)?(this.line--,this.skipNextNewLine=!1,this._addGap(),this.advance()):(this.skipNextNewLine=!1,Dm(e)&&(e=this._processSurrogate(e)),null===this.handler.onParseError||e>31&&e<127||e===Nm.LINE_FEED||e===Nm.CARRIAGE_RETURN||e>159&&e<64976||this._checkForProblematicCharacters(e),e)}_checkForProblematicCharacters(e){Pm(e)?this._err(Fm.controlCharacterInInputStream):Bm(e)&&this._err(Fm.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"}(jm=jm||(jm={}));var Hm,Gm=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)))),Vm=new Uint16Array("\u0200aglq\t\x15\x18\x1b\u026d\x0f\0\0\x12p;\u4026os;\u4027t;\u403et;\u403cuot;\u4022".split("").map((e=>e.charCodeAt(0))));const qm=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]]),Wm=null!==(Hm=String.fromCodePoint)&&void 0!==Hm?Hm: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 Zm,$m,Ym,Km,Xm,Jm,Qm,ef,tf;function nf(e){return e>=Zm.ZERO&&e<=Zm.NINE}function rf(e){return e===Zm.EQUALS||function(e){return e>=Zm.UPPER_A&&e<=Zm.UPPER_Z||e>=Zm.LOWER_A&&e<=Zm.LOWER_Z||nf(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"}(Zm||(Zm={})),function(e){e[e.VALUE_LENGTH=49152]="VALUE_LENGTH",e[e.BRANCH_LENGTH=16256]="BRANCH_LENGTH",e[e.JUMP_TABLE=127]="JUMP_TABLE"}($m||($m={})),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"}(Ym||(Ym={})),function(e){e[e.Legacy=0]="Legacy",e[e.Strict=1]="Strict",e[e.Attribute=2]="Attribute"}(Km||(Km={}));class af{constructor(e,t,n){this.decodeTree=e,this.emitCodePoint=t,this.errors=n,this.state=Ym.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=Km.Strict}startEntity(e){this.decodeMode=e,this.state=Ym.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(e,t){switch(this.state){case Ym.EntityStart:return e.charCodeAt(t)===Zm.NUM?(this.state=Ym.NumericStart,this.consumed+=1,this.stateNumericStart(e,t+1)):(this.state=Ym.NamedEntity,this.stateNamedEntity(e,t));case Ym.NumericStart:return this.stateNumericStart(e,t);case Ym.NumericDecimal:return this.stateNumericDecimal(e,t);case Ym.NumericHex:return this.stateNumericHex(e,t);case Ym.NamedEntity:return this.stateNamedEntity(e,t)}}stateNumericStart(e,t){return t>=e.length?-1:(32|e.charCodeAt(t))===Zm.LOWER_X?(this.state=Ym.NumericHex,this.consumed+=1,this.stateNumericHex(e,t+1)):(this.state=Ym.NumericDecimal,this.stateNumericDecimal(e,t))}addToNumericResult(e,t,n,r){if(t!==n){const a=n-t;this.result=this.result*Math.pow(r,a)+parseInt(e.substr(t,a),r),this.consumed+=a}}stateNumericHex(e,t){const n=t;for(;t=Zm.UPPER_A&&r<=Zm.UPPER_F||r>=Zm.LOWER_A&&r<=Zm.LOWER_F)))return this.addToNumericResult(e,n,t,16),this.emitNumericEntity(a,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=qm.get(e))&&void 0!==t?t:e}(this.result),this.consumed),this.errors&&(e!==Zm.SEMI&&this.errors.missingSemicolonAfterCharacterReference(),this.errors.validateNumericCharacterReference(this.result)),this.consumed}stateNamedEntity(e,t){const{decodeTree:n}=this;let r=n[this.treeIndex],a=(r&$m.VALUE_LENGTH)>>14;for(;t>14,0!==a){if(o===Zm.SEMI)return this.emitNamedEntityData(this.treeIndex,a,this.consumed+this.excess);this.decodeMode!==Km.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]&$m.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]&~$m.VALUE_LENGTH:r[e+1],n),3===t&&this.emitCodePoint(r[e+2],n),n}end(){var e;switch(this.state){case Ym.NamedEntity:return 0===this.result||this.decodeMode===Km.Attribute&&this.result!==this.treeIndex?0:this.emitNotTerminatedNamedEntity();case Ym.NumericDecimal:return this.emitNumericEntity(0,2);case Ym.NumericHex:return this.emitNumericEntity(0,3);case Ym.NumericStart:return null===(e=this.errors)||void 0===e||e.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case Ym.EntityStart:return 0}}}function of(e){let t="";const n=new af(e,(e=>t+=Wm(e)));return function(e,r){let a=0,o=0;for(;(o=e.indexOf("&",o))>=0;){t+=e.slice(a,o),n.startEntity(r);const i=n.write(e,o+1);if(i<0){a=o+n.end();break}a=o+i,o=0===i?a+1:a}const i=t+e.slice(a);return t="",i}}function sf(e,t,n,r){const a=(t&$m.BRANCH_LENGTH)>>7,o=t&$m.JUMP_TABLE;if(0===a)return 0!==o&&r===o?n:-1;if(o){const t=r-o;return t<0||t>=a?-1:e[n+t]-1}let i=n,s=i+a-1;for(;i<=s;){const t=i+s>>>1,n=e[t];if(nr))return e[t+a];s=t-1}}return-1}of(Gm),of(Vm),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/"}(Xm=Xm||(Xm={})),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"}(Jm=Jm||(Jm={})),function(e){e.NO_QUIRKS="no-quirks",e.QUIRKS="quirks",e.LIMITED_QUIRKS="limited-quirks"}(Qm=Qm||(Qm={})),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"}(ef=ef||(ef={})),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"}(tf=tf||(tf={}));const lf=new Map([[ef.A,tf.A],[ef.ADDRESS,tf.ADDRESS],[ef.ANNOTATION_XML,tf.ANNOTATION_XML],[ef.APPLET,tf.APPLET],[ef.AREA,tf.AREA],[ef.ARTICLE,tf.ARTICLE],[ef.ASIDE,tf.ASIDE],[ef.B,tf.B],[ef.BASE,tf.BASE],[ef.BASEFONT,tf.BASEFONT],[ef.BGSOUND,tf.BGSOUND],[ef.BIG,tf.BIG],[ef.BLOCKQUOTE,tf.BLOCKQUOTE],[ef.BODY,tf.BODY],[ef.BR,tf.BR],[ef.BUTTON,tf.BUTTON],[ef.CAPTION,tf.CAPTION],[ef.CENTER,tf.CENTER],[ef.CODE,tf.CODE],[ef.COL,tf.COL],[ef.COLGROUP,tf.COLGROUP],[ef.DD,tf.DD],[ef.DESC,tf.DESC],[ef.DETAILS,tf.DETAILS],[ef.DIALOG,tf.DIALOG],[ef.DIR,tf.DIR],[ef.DIV,tf.DIV],[ef.DL,tf.DL],[ef.DT,tf.DT],[ef.EM,tf.EM],[ef.EMBED,tf.EMBED],[ef.FIELDSET,tf.FIELDSET],[ef.FIGCAPTION,tf.FIGCAPTION],[ef.FIGURE,tf.FIGURE],[ef.FONT,tf.FONT],[ef.FOOTER,tf.FOOTER],[ef.FOREIGN_OBJECT,tf.FOREIGN_OBJECT],[ef.FORM,tf.FORM],[ef.FRAME,tf.FRAME],[ef.FRAMESET,tf.FRAMESET],[ef.H1,tf.H1],[ef.H2,tf.H2],[ef.H3,tf.H3],[ef.H4,tf.H4],[ef.H5,tf.H5],[ef.H6,tf.H6],[ef.HEAD,tf.HEAD],[ef.HEADER,tf.HEADER],[ef.HGROUP,tf.HGROUP],[ef.HR,tf.HR],[ef.HTML,tf.HTML],[ef.I,tf.I],[ef.IMG,tf.IMG],[ef.IMAGE,tf.IMAGE],[ef.INPUT,tf.INPUT],[ef.IFRAME,tf.IFRAME],[ef.KEYGEN,tf.KEYGEN],[ef.LABEL,tf.LABEL],[ef.LI,tf.LI],[ef.LINK,tf.LINK],[ef.LISTING,tf.LISTING],[ef.MAIN,tf.MAIN],[ef.MALIGNMARK,tf.MALIGNMARK],[ef.MARQUEE,tf.MARQUEE],[ef.MATH,tf.MATH],[ef.MENU,tf.MENU],[ef.META,tf.META],[ef.MGLYPH,tf.MGLYPH],[ef.MI,tf.MI],[ef.MO,tf.MO],[ef.MN,tf.MN],[ef.MS,tf.MS],[ef.MTEXT,tf.MTEXT],[ef.NAV,tf.NAV],[ef.NOBR,tf.NOBR],[ef.NOFRAMES,tf.NOFRAMES],[ef.NOEMBED,tf.NOEMBED],[ef.NOSCRIPT,tf.NOSCRIPT],[ef.OBJECT,tf.OBJECT],[ef.OL,tf.OL],[ef.OPTGROUP,tf.OPTGROUP],[ef.OPTION,tf.OPTION],[ef.P,tf.P],[ef.PARAM,tf.PARAM],[ef.PLAINTEXT,tf.PLAINTEXT],[ef.PRE,tf.PRE],[ef.RB,tf.RB],[ef.RP,tf.RP],[ef.RT,tf.RT],[ef.RTC,tf.RTC],[ef.RUBY,tf.RUBY],[ef.S,tf.S],[ef.SCRIPT,tf.SCRIPT],[ef.SECTION,tf.SECTION],[ef.SELECT,tf.SELECT],[ef.SOURCE,tf.SOURCE],[ef.SMALL,tf.SMALL],[ef.SPAN,tf.SPAN],[ef.STRIKE,tf.STRIKE],[ef.STRONG,tf.STRONG],[ef.STYLE,tf.STYLE],[ef.SUB,tf.SUB],[ef.SUMMARY,tf.SUMMARY],[ef.SUP,tf.SUP],[ef.TABLE,tf.TABLE],[ef.TBODY,tf.TBODY],[ef.TEMPLATE,tf.TEMPLATE],[ef.TEXTAREA,tf.TEXTAREA],[ef.TFOOT,tf.TFOOT],[ef.TD,tf.TD],[ef.TH,tf.TH],[ef.THEAD,tf.THEAD],[ef.TITLE,tf.TITLE],[ef.TR,tf.TR],[ef.TRACK,tf.TRACK],[ef.TT,tf.TT],[ef.U,tf.U],[ef.UL,tf.UL],[ef.SVG,tf.SVG],[ef.VAR,tf.VAR],[ef.WBR,tf.WBR],[ef.XMP,tf.XMP]]);function cf(e){var t;return null!==(t=lf.get(e))&&void 0!==t?t:tf.UNKNOWN}const uf=tf,df={[Xm.HTML]:new Set([uf.ADDRESS,uf.APPLET,uf.AREA,uf.ARTICLE,uf.ASIDE,uf.BASE,uf.BASEFONT,uf.BGSOUND,uf.BLOCKQUOTE,uf.BODY,uf.BR,uf.BUTTON,uf.CAPTION,uf.CENTER,uf.COL,uf.COLGROUP,uf.DD,uf.DETAILS,uf.DIR,uf.DIV,uf.DL,uf.DT,uf.EMBED,uf.FIELDSET,uf.FIGCAPTION,uf.FIGURE,uf.FOOTER,uf.FORM,uf.FRAME,uf.FRAMESET,uf.H1,uf.H2,uf.H3,uf.H4,uf.H5,uf.H6,uf.HEAD,uf.HEADER,uf.HGROUP,uf.HR,uf.HTML,uf.IFRAME,uf.IMG,uf.INPUT,uf.LI,uf.LINK,uf.LISTING,uf.MAIN,uf.MARQUEE,uf.MENU,uf.META,uf.NAV,uf.NOEMBED,uf.NOFRAMES,uf.NOSCRIPT,uf.OBJECT,uf.OL,uf.P,uf.PARAM,uf.PLAINTEXT,uf.PRE,uf.SCRIPT,uf.SECTION,uf.SELECT,uf.SOURCE,uf.STYLE,uf.SUMMARY,uf.TABLE,uf.TBODY,uf.TD,uf.TEMPLATE,uf.TEXTAREA,uf.TFOOT,uf.TH,uf.THEAD,uf.TITLE,uf.TR,uf.TRACK,uf.UL,uf.WBR,uf.XMP]),[Xm.MATHML]:new Set([uf.MI,uf.MO,uf.MN,uf.MS,uf.MTEXT,uf.ANNOTATION_XML]),[Xm.SVG]:new Set([uf.TITLE,uf.FOREIGN_OBJECT,uf.DESC]),[Xm.XLINK]:new Set,[Xm.XML]:new Set,[Xm.XMLNS]:new Set};function pf(e){return e===uf.H1||e===uf.H2||e===uf.H3||e===uf.H4||e===uf.H5||e===uf.H6}new Set([ef.STYLE,ef.SCRIPT,ef.XMP,ef.IFRAME,ef.NOEMBED,ef.NOFRAMES,ef.PLAINTEXT]);const hf=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 mf;!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"}(mf||(mf={}));const ff={DATA:mf.DATA,RCDATA:mf.RCDATA,RAWTEXT:mf.RAWTEXT,SCRIPT_DATA:mf.SCRIPT_DATA,PLAINTEXT:mf.PLAINTEXT,CDATA_SECTION:mf.CDATA_SECTION};function gf(e){return e>=Nm.DIGIT_0&&e<=Nm.DIGIT_9}function bf(e){return e>=Nm.LATIN_CAPITAL_A&&e<=Nm.LATIN_CAPITAL_Z}function yf(e){return function(e){return e>=Nm.LATIN_SMALL_A&&e<=Nm.LATIN_SMALL_Z}(e)||bf(e)}function vf(e){return yf(e)||gf(e)}function Ef(e){return e>=Nm.LATIN_CAPITAL_A&&e<=Nm.LATIN_CAPITAL_F}function wf(e){return e>=Nm.LATIN_SMALL_A&&e<=Nm.LATIN_SMALL_F}function Sf(e){return e+32}function Af(e){return e===Nm.SPACE||e===Nm.LINE_FEED||e===Nm.TABULATION||e===Nm.FORM_FEED}function _f(e){return Af(e)||e===Nm.SOLIDUS||e===Nm.GREATER_THAN_SIGN}class Tf{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=mf.DATA,this.returnState=mf.DATA,this.charRefCode=-1,this.consumedAfterSnapshot=-1,this.currentCharacterToken=null,this.currentToken=null,this.currentAttr={name:"",value:""},this.preprocessor=new zm(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(Fm.endTagWithAttributes),e.selfClosing&&this._err(Fm.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 jm.CHARACTER:this.handler.onCharacter(this.currentCharacterToken);break;case jm.NULL_CHARACTER:this.handler.onNullCharacter(this.currentCharacterToken);break;case jm.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:jm.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=Af(e)?jm.WHITESPACE_CHARACTER:e===Nm.NULL?jm.NULL_CHARACTER:jm.CHARACTER;this._appendCharToCurrentCharacterToken(t,String.fromCodePoint(e))}_emitChars(e){this._appendCharToCurrentCharacterToken(jm.CHARACTER,e)}_matchNamedCharacterReference(e){let t=null,n=0,r=!1;for(let o=0,i=Gm[0];o>=0&&(o=sf(Gm,i,o+1,e),!(o<0));e=this._consume()){n+=1,i=Gm[o];const s=i&$m.VALUE_LENGTH;if(s){const i=(s>>14)-1;if(e!==Nm.SEMICOLON&&this._isCharacterReferenceInAttribute()&&((a=this.preprocessor.peek(1))===Nm.EQUALS_SIGN||vf(a))?(t=[Nm.AMPERSAND],o+=i):(t=0===i?[Gm[o]&~$m.VALUE_LENGTH]:1===i?[Gm[++o]]:[Gm[++o],Gm[++o]],n=0,r=e!==Nm.SEMICOLON),0===i){this._consume();break}}}var a;return this._unconsume(n),r&&!this.preprocessor.endOfChunkHit&&this._err(Fm.missingSemicolonAfterCharacterReference),this._unconsume(1),t}_isCharacterReferenceInAttribute(){return this.returnState===mf.ATTRIBUTE_VALUE_DOUBLE_QUOTED||this.returnState===mf.ATTRIBUTE_VALUE_SINGLE_QUOTED||this.returnState===mf.ATTRIBUTE_VALUE_UNQUOTED}_flushCodePointConsumedAsCharacterReference(e){this._isCharacterReferenceInAttribute()?this.currentAttr.value+=String.fromCodePoint(e):this._emitCodePoint(e)}_callState(e){switch(this.state){case mf.DATA:this._stateData(e);break;case mf.RCDATA:this._stateRcdata(e);break;case mf.RAWTEXT:this._stateRawtext(e);break;case mf.SCRIPT_DATA:this._stateScriptData(e);break;case mf.PLAINTEXT:this._statePlaintext(e);break;case mf.TAG_OPEN:this._stateTagOpen(e);break;case mf.END_TAG_OPEN:this._stateEndTagOpen(e);break;case mf.TAG_NAME:this._stateTagName(e);break;case mf.RCDATA_LESS_THAN_SIGN:this._stateRcdataLessThanSign(e);break;case mf.RCDATA_END_TAG_OPEN:this._stateRcdataEndTagOpen(e);break;case mf.RCDATA_END_TAG_NAME:this._stateRcdataEndTagName(e);break;case mf.RAWTEXT_LESS_THAN_SIGN:this._stateRawtextLessThanSign(e);break;case mf.RAWTEXT_END_TAG_OPEN:this._stateRawtextEndTagOpen(e);break;case mf.RAWTEXT_END_TAG_NAME:this._stateRawtextEndTagName(e);break;case mf.SCRIPT_DATA_LESS_THAN_SIGN:this._stateScriptDataLessThanSign(e);break;case mf.SCRIPT_DATA_END_TAG_OPEN:this._stateScriptDataEndTagOpen(e);break;case mf.SCRIPT_DATA_END_TAG_NAME:this._stateScriptDataEndTagName(e);break;case mf.SCRIPT_DATA_ESCAPE_START:this._stateScriptDataEscapeStart(e);break;case mf.SCRIPT_DATA_ESCAPE_START_DASH:this._stateScriptDataEscapeStartDash(e);break;case mf.SCRIPT_DATA_ESCAPED:this._stateScriptDataEscaped(e);break;case mf.SCRIPT_DATA_ESCAPED_DASH:this._stateScriptDataEscapedDash(e);break;case mf.SCRIPT_DATA_ESCAPED_DASH_DASH:this._stateScriptDataEscapedDashDash(e);break;case mf.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN:this._stateScriptDataEscapedLessThanSign(e);break;case mf.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:this._stateScriptDataEscapedEndTagOpen(e);break;case mf.SCRIPT_DATA_ESCAPED_END_TAG_NAME:this._stateScriptDataEscapedEndTagName(e);break;case mf.SCRIPT_DATA_DOUBLE_ESCAPE_START:this._stateScriptDataDoubleEscapeStart(e);break;case mf.SCRIPT_DATA_DOUBLE_ESCAPED:this._stateScriptDataDoubleEscaped(e);break;case mf.SCRIPT_DATA_DOUBLE_ESCAPED_DASH:this._stateScriptDataDoubleEscapedDash(e);break;case mf.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH:this._stateScriptDataDoubleEscapedDashDash(e);break;case mf.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN:this._stateScriptDataDoubleEscapedLessThanSign(e);break;case mf.SCRIPT_DATA_DOUBLE_ESCAPE_END:this._stateScriptDataDoubleEscapeEnd(e);break;case mf.BEFORE_ATTRIBUTE_NAME:this._stateBeforeAttributeName(e);break;case mf.ATTRIBUTE_NAME:this._stateAttributeName(e);break;case mf.AFTER_ATTRIBUTE_NAME:this._stateAfterAttributeName(e);break;case mf.BEFORE_ATTRIBUTE_VALUE:this._stateBeforeAttributeValue(e);break;case mf.ATTRIBUTE_VALUE_DOUBLE_QUOTED:this._stateAttributeValueDoubleQuoted(e);break;case mf.ATTRIBUTE_VALUE_SINGLE_QUOTED:this._stateAttributeValueSingleQuoted(e);break;case mf.ATTRIBUTE_VALUE_UNQUOTED:this._stateAttributeValueUnquoted(e);break;case mf.AFTER_ATTRIBUTE_VALUE_QUOTED:this._stateAfterAttributeValueQuoted(e);break;case mf.SELF_CLOSING_START_TAG:this._stateSelfClosingStartTag(e);break;case mf.BOGUS_COMMENT:this._stateBogusComment(e);break;case mf.MARKUP_DECLARATION_OPEN:this._stateMarkupDeclarationOpen(e);break;case mf.COMMENT_START:this._stateCommentStart(e);break;case mf.COMMENT_START_DASH:this._stateCommentStartDash(e);break;case mf.COMMENT:this._stateComment(e);break;case mf.COMMENT_LESS_THAN_SIGN:this._stateCommentLessThanSign(e);break;case mf.COMMENT_LESS_THAN_SIGN_BANG:this._stateCommentLessThanSignBang(e);break;case mf.COMMENT_LESS_THAN_SIGN_BANG_DASH:this._stateCommentLessThanSignBangDash(e);break;case mf.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:this._stateCommentLessThanSignBangDashDash(e);break;case mf.COMMENT_END_DASH:this._stateCommentEndDash(e);break;case mf.COMMENT_END:this._stateCommentEnd(e);break;case mf.COMMENT_END_BANG:this._stateCommentEndBang(e);break;case mf.DOCTYPE:this._stateDoctype(e);break;case mf.BEFORE_DOCTYPE_NAME:this._stateBeforeDoctypeName(e);break;case mf.DOCTYPE_NAME:this._stateDoctypeName(e);break;case mf.AFTER_DOCTYPE_NAME:this._stateAfterDoctypeName(e);break;case mf.AFTER_DOCTYPE_PUBLIC_KEYWORD:this._stateAfterDoctypePublicKeyword(e);break;case mf.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER:this._stateBeforeDoctypePublicIdentifier(e);break;case mf.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED:this._stateDoctypePublicIdentifierDoubleQuoted(e);break;case mf.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED:this._stateDoctypePublicIdentifierSingleQuoted(e);break;case mf.AFTER_DOCTYPE_PUBLIC_IDENTIFIER:this._stateAfterDoctypePublicIdentifier(e);break;case mf.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS:this._stateBetweenDoctypePublicAndSystemIdentifiers(e);break;case mf.AFTER_DOCTYPE_SYSTEM_KEYWORD:this._stateAfterDoctypeSystemKeyword(e);break;case mf.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER:this._stateBeforeDoctypeSystemIdentifier(e);break;case mf.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED:this._stateDoctypeSystemIdentifierDoubleQuoted(e);break;case mf.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED:this._stateDoctypeSystemIdentifierSingleQuoted(e);break;case mf.AFTER_DOCTYPE_SYSTEM_IDENTIFIER:this._stateAfterDoctypeSystemIdentifier(e);break;case mf.BOGUS_DOCTYPE:this._stateBogusDoctype(e);break;case mf.CDATA_SECTION:this._stateCdataSection(e);break;case mf.CDATA_SECTION_BRACKET:this._stateCdataSectionBracket(e);break;case mf.CDATA_SECTION_END:this._stateCdataSectionEnd(e);break;case mf.CHARACTER_REFERENCE:this._stateCharacterReference(e);break;case mf.NAMED_CHARACTER_REFERENCE:this._stateNamedCharacterReference(e);break;case mf.AMBIGUOUS_AMPERSAND:this._stateAmbiguousAmpersand(e);break;case mf.NUMERIC_CHARACTER_REFERENCE:this._stateNumericCharacterReference(e);break;case mf.HEXADEMICAL_CHARACTER_REFERENCE_START:this._stateHexademicalCharacterReferenceStart(e);break;case mf.HEXADEMICAL_CHARACTER_REFERENCE:this._stateHexademicalCharacterReference(e);break;case mf.DECIMAL_CHARACTER_REFERENCE:this._stateDecimalCharacterReference(e);break;case mf.NUMERIC_CHARACTER_REFERENCE_END:this._stateNumericCharacterReferenceEnd(e);break;default:throw new Error("Unknown state")}}_stateData(e){switch(e){case Nm.LESS_THAN_SIGN:this.state=mf.TAG_OPEN;break;case Nm.AMPERSAND:this.returnState=mf.DATA,this.state=mf.CHARACTER_REFERENCE;break;case Nm.NULL:this._err(Fm.unexpectedNullCharacter),this._emitCodePoint(e);break;case Nm.EOF:this._emitEOFToken();break;default:this._emitCodePoint(e)}}_stateRcdata(e){switch(e){case Nm.AMPERSAND:this.returnState=mf.RCDATA,this.state=mf.CHARACTER_REFERENCE;break;case Nm.LESS_THAN_SIGN:this.state=mf.RCDATA_LESS_THAN_SIGN;break;case Nm.NULL:this._err(Fm.unexpectedNullCharacter),this._emitChars(km);break;case Nm.EOF:this._emitEOFToken();break;default:this._emitCodePoint(e)}}_stateRawtext(e){switch(e){case Nm.LESS_THAN_SIGN:this.state=mf.RAWTEXT_LESS_THAN_SIGN;break;case Nm.NULL:this._err(Fm.unexpectedNullCharacter),this._emitChars(km);break;case Nm.EOF:this._emitEOFToken();break;default:this._emitCodePoint(e)}}_stateScriptData(e){switch(e){case Nm.LESS_THAN_SIGN:this.state=mf.SCRIPT_DATA_LESS_THAN_SIGN;break;case Nm.NULL:this._err(Fm.unexpectedNullCharacter),this._emitChars(km);break;case Nm.EOF:this._emitEOFToken();break;default:this._emitCodePoint(e)}}_statePlaintext(e){switch(e){case Nm.NULL:this._err(Fm.unexpectedNullCharacter),this._emitChars(km);break;case Nm.EOF:this._emitEOFToken();break;default:this._emitCodePoint(e)}}_stateTagOpen(e){if(yf(e))this._createStartTagToken(),this.state=mf.TAG_NAME,this._stateTagName(e);else switch(e){case Nm.EXCLAMATION_MARK:this.state=mf.MARKUP_DECLARATION_OPEN;break;case Nm.SOLIDUS:this.state=mf.END_TAG_OPEN;break;case Nm.QUESTION_MARK:this._err(Fm.unexpectedQuestionMarkInsteadOfTagName),this._createCommentToken(1),this.state=mf.BOGUS_COMMENT,this._stateBogusComment(e);break;case Nm.EOF:this._err(Fm.eofBeforeTagName),this._emitChars("<"),this._emitEOFToken();break;default:this._err(Fm.invalidFirstCharacterOfTagName),this._emitChars("<"),this.state=mf.DATA,this._stateData(e)}}_stateEndTagOpen(e){if(yf(e))this._createEndTagToken(),this.state=mf.TAG_NAME,this._stateTagName(e);else switch(e){case Nm.GREATER_THAN_SIGN:this._err(Fm.missingEndTagName),this.state=mf.DATA;break;case Nm.EOF:this._err(Fm.eofBeforeTagName),this._emitChars("");break;case Nm.NULL:this._err(Fm.unexpectedNullCharacter),this.state=mf.SCRIPT_DATA_ESCAPED,this._emitChars(km);break;case Nm.EOF:this._err(Fm.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break;default:this.state=mf.SCRIPT_DATA_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataEscapedLessThanSign(e){e===Nm.SOLIDUS?this.state=mf.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:yf(e)?(this._emitChars("<"),this.state=mf.SCRIPT_DATA_DOUBLE_ESCAPE_START,this._stateScriptDataDoubleEscapeStart(e)):(this._emitChars("<"),this.state=mf.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(e))}_stateScriptDataEscapedEndTagOpen(e){yf(e)?(this.state=mf.SCRIPT_DATA_ESCAPED_END_TAG_NAME,this._stateScriptDataEscapedEndTagName(e)):(this._emitChars("");break;case Nm.NULL:this._err(Fm.unexpectedNullCharacter),this.state=mf.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitChars(km);break;case Nm.EOF:this._err(Fm.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break;default:this.state=mf.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataDoubleEscapedLessThanSign(e){e===Nm.SOLIDUS?(this.state=mf.SCRIPT_DATA_DOUBLE_ESCAPE_END,this._emitChars("/")):(this.state=mf.SCRIPT_DATA_DOUBLE_ESCAPED,this._stateScriptDataDoubleEscaped(e))}_stateScriptDataDoubleEscapeEnd(e){if(this.preprocessor.startsWith(Lm,!1)&&_f(this.preprocessor.peek(6))){this._emitCodePoint(e);for(let e=0;e<6;e++)this._emitCodePoint(this._consume());this.state=mf.SCRIPT_DATA_ESCAPED}else this._ensureHibernation()||(this.state=mf.SCRIPT_DATA_DOUBLE_ESCAPED,this._stateScriptDataDoubleEscaped(e))}_stateBeforeAttributeName(e){switch(e){case Nm.SPACE:case Nm.LINE_FEED:case Nm.TABULATION:case Nm.FORM_FEED:break;case Nm.SOLIDUS:case Nm.GREATER_THAN_SIGN:case Nm.EOF:this.state=mf.AFTER_ATTRIBUTE_NAME,this._stateAfterAttributeName(e);break;case Nm.EQUALS_SIGN:this._err(Fm.unexpectedEqualsSignBeforeAttributeName),this._createAttr("="),this.state=mf.ATTRIBUTE_NAME;break;default:this._createAttr(""),this.state=mf.ATTRIBUTE_NAME,this._stateAttributeName(e)}}_stateAttributeName(e){switch(e){case Nm.SPACE:case Nm.LINE_FEED:case Nm.TABULATION:case Nm.FORM_FEED:case Nm.SOLIDUS:case Nm.GREATER_THAN_SIGN:case Nm.EOF:this._leaveAttrName(),this.state=mf.AFTER_ATTRIBUTE_NAME,this._stateAfterAttributeName(e);break;case Nm.EQUALS_SIGN:this._leaveAttrName(),this.state=mf.BEFORE_ATTRIBUTE_VALUE;break;case Nm.QUOTATION_MARK:case Nm.APOSTROPHE:case Nm.LESS_THAN_SIGN:this._err(Fm.unexpectedCharacterInAttributeName),this.currentAttr.name+=String.fromCodePoint(e);break;case Nm.NULL:this._err(Fm.unexpectedNullCharacter),this.currentAttr.name+=km;break;default:this.currentAttr.name+=String.fromCodePoint(bf(e)?Sf(e):e)}}_stateAfterAttributeName(e){switch(e){case Nm.SPACE:case Nm.LINE_FEED:case Nm.TABULATION:case Nm.FORM_FEED:break;case Nm.SOLIDUS:this.state=mf.SELF_CLOSING_START_TAG;break;case Nm.EQUALS_SIGN:this.state=mf.BEFORE_ATTRIBUTE_VALUE;break;case Nm.GREATER_THAN_SIGN:this.state=mf.DATA,this.emitCurrentTagToken();break;case Nm.EOF:this._err(Fm.eofInTag),this._emitEOFToken();break;default:this._createAttr(""),this.state=mf.ATTRIBUTE_NAME,this._stateAttributeName(e)}}_stateBeforeAttributeValue(e){switch(e){case Nm.SPACE:case Nm.LINE_FEED:case Nm.TABULATION:case Nm.FORM_FEED:break;case Nm.QUOTATION_MARK:this.state=mf.ATTRIBUTE_VALUE_DOUBLE_QUOTED;break;case Nm.APOSTROPHE:this.state=mf.ATTRIBUTE_VALUE_SINGLE_QUOTED;break;case Nm.GREATER_THAN_SIGN:this._err(Fm.missingAttributeValue),this.state=mf.DATA,this.emitCurrentTagToken();break;default:this.state=mf.ATTRIBUTE_VALUE_UNQUOTED,this._stateAttributeValueUnquoted(e)}}_stateAttributeValueDoubleQuoted(e){switch(e){case Nm.QUOTATION_MARK:this.state=mf.AFTER_ATTRIBUTE_VALUE_QUOTED;break;case Nm.AMPERSAND:this.returnState=mf.ATTRIBUTE_VALUE_DOUBLE_QUOTED,this.state=mf.CHARACTER_REFERENCE;break;case Nm.NULL:this._err(Fm.unexpectedNullCharacter),this.currentAttr.value+=km;break;case Nm.EOF:this._err(Fm.eofInTag),this._emitEOFToken();break;default:this.currentAttr.value+=String.fromCodePoint(e)}}_stateAttributeValueSingleQuoted(e){switch(e){case Nm.APOSTROPHE:this.state=mf.AFTER_ATTRIBUTE_VALUE_QUOTED;break;case Nm.AMPERSAND:this.returnState=mf.ATTRIBUTE_VALUE_SINGLE_QUOTED,this.state=mf.CHARACTER_REFERENCE;break;case Nm.NULL:this._err(Fm.unexpectedNullCharacter),this.currentAttr.value+=km;break;case Nm.EOF:this._err(Fm.eofInTag),this._emitEOFToken();break;default:this.currentAttr.value+=String.fromCodePoint(e)}}_stateAttributeValueUnquoted(e){switch(e){case Nm.SPACE:case Nm.LINE_FEED:case Nm.TABULATION:case Nm.FORM_FEED:this._leaveAttrValue(),this.state=mf.BEFORE_ATTRIBUTE_NAME;break;case Nm.AMPERSAND:this.returnState=mf.ATTRIBUTE_VALUE_UNQUOTED,this.state=mf.CHARACTER_REFERENCE;break;case Nm.GREATER_THAN_SIGN:this._leaveAttrValue(),this.state=mf.DATA,this.emitCurrentTagToken();break;case Nm.NULL:this._err(Fm.unexpectedNullCharacter),this.currentAttr.value+=km;break;case Nm.QUOTATION_MARK:case Nm.APOSTROPHE:case Nm.LESS_THAN_SIGN:case Nm.EQUALS_SIGN:case Nm.GRAVE_ACCENT:this._err(Fm.unexpectedCharacterInUnquotedAttributeValue),this.currentAttr.value+=String.fromCodePoint(e);break;case Nm.EOF:this._err(Fm.eofInTag),this._emitEOFToken();break;default:this.currentAttr.value+=String.fromCodePoint(e)}}_stateAfterAttributeValueQuoted(e){switch(e){case Nm.SPACE:case Nm.LINE_FEED:case Nm.TABULATION:case Nm.FORM_FEED:this._leaveAttrValue(),this.state=mf.BEFORE_ATTRIBUTE_NAME;break;case Nm.SOLIDUS:this._leaveAttrValue(),this.state=mf.SELF_CLOSING_START_TAG;break;case Nm.GREATER_THAN_SIGN:this._leaveAttrValue(),this.state=mf.DATA,this.emitCurrentTagToken();break;case Nm.EOF:this._err(Fm.eofInTag),this._emitEOFToken();break;default:this._err(Fm.missingWhitespaceBetweenAttributes),this.state=mf.BEFORE_ATTRIBUTE_NAME,this._stateBeforeAttributeName(e)}}_stateSelfClosingStartTag(e){switch(e){case Nm.GREATER_THAN_SIGN:this.currentToken.selfClosing=!0,this.state=mf.DATA,this.emitCurrentTagToken();break;case Nm.EOF:this._err(Fm.eofInTag),this._emitEOFToken();break;default:this._err(Fm.unexpectedSolidusInTag),this.state=mf.BEFORE_ATTRIBUTE_NAME,this._stateBeforeAttributeName(e)}}_stateBogusComment(e){const t=this.currentToken;switch(e){case Nm.GREATER_THAN_SIGN:this.state=mf.DATA,this.emitCurrentComment(t);break;case Nm.EOF:this.emitCurrentComment(t),this._emitEOFToken();break;case Nm.NULL:this._err(Fm.unexpectedNullCharacter),t.data+=km;break;default:t.data+=String.fromCodePoint(e)}}_stateMarkupDeclarationOpen(e){this._consumeSequenceIfMatch("--",!0)?(this._createCommentToken(3),this.state=mf.COMMENT_START):this._consumeSequenceIfMatch(Mm,!1)?(this.currentLocation=this.getCurrentLocation(8),this.state=mf.DOCTYPE):this._consumeSequenceIfMatch(Rm,!0)?this.inForeignNode?this.state=mf.CDATA_SECTION:(this._err(Fm.cdataInHtmlContent),this._createCommentToken(8),this.currentToken.data="[CDATA[",this.state=mf.BOGUS_COMMENT):this._ensureHibernation()||(this._err(Fm.incorrectlyOpenedComment),this._createCommentToken(2),this.state=mf.BOGUS_COMMENT,this._stateBogusComment(e))}_stateCommentStart(e){switch(e){case Nm.HYPHEN_MINUS:this.state=mf.COMMENT_START_DASH;break;case Nm.GREATER_THAN_SIGN:{this._err(Fm.abruptClosingOfEmptyComment),this.state=mf.DATA;const e=this.currentToken;this.emitCurrentComment(e);break}default:this.state=mf.COMMENT,this._stateComment(e)}}_stateCommentStartDash(e){const t=this.currentToken;switch(e){case Nm.HYPHEN_MINUS:this.state=mf.COMMENT_END;break;case Nm.GREATER_THAN_SIGN:this._err(Fm.abruptClosingOfEmptyComment),this.state=mf.DATA,this.emitCurrentComment(t);break;case Nm.EOF:this._err(Fm.eofInComment),this.emitCurrentComment(t),this._emitEOFToken();break;default:t.data+="-",this.state=mf.COMMENT,this._stateComment(e)}}_stateComment(e){const t=this.currentToken;switch(e){case Nm.HYPHEN_MINUS:this.state=mf.COMMENT_END_DASH;break;case Nm.LESS_THAN_SIGN:t.data+="<",this.state=mf.COMMENT_LESS_THAN_SIGN;break;case Nm.NULL:this._err(Fm.unexpectedNullCharacter),t.data+=km;break;case Nm.EOF:this._err(Fm.eofInComment),this.emitCurrentComment(t),this._emitEOFToken();break;default:t.data+=String.fromCodePoint(e)}}_stateCommentLessThanSign(e){const t=this.currentToken;switch(e){case Nm.EXCLAMATION_MARK:t.data+="!",this.state=mf.COMMENT_LESS_THAN_SIGN_BANG;break;case Nm.LESS_THAN_SIGN:t.data+="<";break;default:this.state=mf.COMMENT,this._stateComment(e)}}_stateCommentLessThanSignBang(e){e===Nm.HYPHEN_MINUS?this.state=mf.COMMENT_LESS_THAN_SIGN_BANG_DASH:(this.state=mf.COMMENT,this._stateComment(e))}_stateCommentLessThanSignBangDash(e){e===Nm.HYPHEN_MINUS?this.state=mf.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:(this.state=mf.COMMENT_END_DASH,this._stateCommentEndDash(e))}_stateCommentLessThanSignBangDashDash(e){e!==Nm.GREATER_THAN_SIGN&&e!==Nm.EOF&&this._err(Fm.nestedComment),this.state=mf.COMMENT_END,this._stateCommentEnd(e)}_stateCommentEndDash(e){const t=this.currentToken;switch(e){case Nm.HYPHEN_MINUS:this.state=mf.COMMENT_END;break;case Nm.EOF:this._err(Fm.eofInComment),this.emitCurrentComment(t),this._emitEOFToken();break;default:t.data+="-",this.state=mf.COMMENT,this._stateComment(e)}}_stateCommentEnd(e){const t=this.currentToken;switch(e){case Nm.GREATER_THAN_SIGN:this.state=mf.DATA,this.emitCurrentComment(t);break;case Nm.EXCLAMATION_MARK:this.state=mf.COMMENT_END_BANG;break;case Nm.HYPHEN_MINUS:t.data+="-";break;case Nm.EOF:this._err(Fm.eofInComment),this.emitCurrentComment(t),this._emitEOFToken();break;default:t.data+="--",this.state=mf.COMMENT,this._stateComment(e)}}_stateCommentEndBang(e){const t=this.currentToken;switch(e){case Nm.HYPHEN_MINUS:t.data+="--!",this.state=mf.COMMENT_END_DASH;break;case Nm.GREATER_THAN_SIGN:this._err(Fm.incorrectlyClosedComment),this.state=mf.DATA,this.emitCurrentComment(t);break;case Nm.EOF:this._err(Fm.eofInComment),this.emitCurrentComment(t),this._emitEOFToken();break;default:t.data+="--!",this.state=mf.COMMENT,this._stateComment(e)}}_stateDoctype(e){switch(e){case Nm.SPACE:case Nm.LINE_FEED:case Nm.TABULATION:case Nm.FORM_FEED:this.state=mf.BEFORE_DOCTYPE_NAME;break;case Nm.GREATER_THAN_SIGN:this.state=mf.BEFORE_DOCTYPE_NAME,this._stateBeforeDoctypeName(e);break;case Nm.EOF:{this._err(Fm.eofInDoctype),this._createDoctypeToken(null);const e=this.currentToken;e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break}default:this._err(Fm.missingWhitespaceBeforeDoctypeName),this.state=mf.BEFORE_DOCTYPE_NAME,this._stateBeforeDoctypeName(e)}}_stateBeforeDoctypeName(e){if(bf(e))this._createDoctypeToken(String.fromCharCode(Sf(e))),this.state=mf.DOCTYPE_NAME;else switch(e){case Nm.SPACE:case Nm.LINE_FEED:case Nm.TABULATION:case Nm.FORM_FEED:break;case Nm.NULL:this._err(Fm.unexpectedNullCharacter),this._createDoctypeToken(km),this.state=mf.DOCTYPE_NAME;break;case Nm.GREATER_THAN_SIGN:{this._err(Fm.missingDoctypeName),this._createDoctypeToken(null);const e=this.currentToken;e.forceQuirks=!0,this.emitCurrentDoctype(e),this.state=mf.DATA;break}case Nm.EOF:{this._err(Fm.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=mf.DOCTYPE_NAME}}_stateDoctypeName(e){const t=this.currentToken;switch(e){case Nm.SPACE:case Nm.LINE_FEED:case Nm.TABULATION:case Nm.FORM_FEED:this.state=mf.AFTER_DOCTYPE_NAME;break;case Nm.GREATER_THAN_SIGN:this.state=mf.DATA,this.emitCurrentDoctype(t);break;case Nm.NULL:this._err(Fm.unexpectedNullCharacter),t.name+=km;break;case Nm.EOF:this._err(Fm.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:t.name+=String.fromCodePoint(bf(e)?Sf(e):e)}}_stateAfterDoctypeName(e){const t=this.currentToken;switch(e){case Nm.SPACE:case Nm.LINE_FEED:case Nm.TABULATION:case Nm.FORM_FEED:break;case Nm.GREATER_THAN_SIGN:this.state=mf.DATA,this.emitCurrentDoctype(t);break;case Nm.EOF:this._err(Fm.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:this._consumeSequenceIfMatch("public",!1)?this.state=mf.AFTER_DOCTYPE_PUBLIC_KEYWORD:this._consumeSequenceIfMatch("system",!1)?this.state=mf.AFTER_DOCTYPE_SYSTEM_KEYWORD:this._ensureHibernation()||(this._err(Fm.invalidCharacterSequenceAfterDoctypeName),t.forceQuirks=!0,this.state=mf.BOGUS_DOCTYPE,this._stateBogusDoctype(e))}}_stateAfterDoctypePublicKeyword(e){const t=this.currentToken;switch(e){case Nm.SPACE:case Nm.LINE_FEED:case Nm.TABULATION:case Nm.FORM_FEED:this.state=mf.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER;break;case Nm.QUOTATION_MARK:this._err(Fm.missingWhitespaceAfterDoctypePublicKeyword),t.publicId="",this.state=mf.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED;break;case Nm.APOSTROPHE:this._err(Fm.missingWhitespaceAfterDoctypePublicKeyword),t.publicId="",this.state=mf.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED;break;case Nm.GREATER_THAN_SIGN:this._err(Fm.missingDoctypePublicIdentifier),t.forceQuirks=!0,this.state=mf.DATA,this.emitCurrentDoctype(t);break;case Nm.EOF:this._err(Fm.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:this._err(Fm.missingQuoteBeforeDoctypePublicIdentifier),t.forceQuirks=!0,this.state=mf.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateBeforeDoctypePublicIdentifier(e){const t=this.currentToken;switch(e){case Nm.SPACE:case Nm.LINE_FEED:case Nm.TABULATION:case Nm.FORM_FEED:break;case Nm.QUOTATION_MARK:t.publicId="",this.state=mf.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED;break;case Nm.APOSTROPHE:t.publicId="",this.state=mf.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED;break;case Nm.GREATER_THAN_SIGN:this._err(Fm.missingDoctypePublicIdentifier),t.forceQuirks=!0,this.state=mf.DATA,this.emitCurrentDoctype(t);break;case Nm.EOF:this._err(Fm.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:this._err(Fm.missingQuoteBeforeDoctypePublicIdentifier),t.forceQuirks=!0,this.state=mf.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateDoctypePublicIdentifierDoubleQuoted(e){const t=this.currentToken;switch(e){case Nm.QUOTATION_MARK:this.state=mf.AFTER_DOCTYPE_PUBLIC_IDENTIFIER;break;case Nm.NULL:this._err(Fm.unexpectedNullCharacter),t.publicId+=km;break;case Nm.GREATER_THAN_SIGN:this._err(Fm.abruptDoctypePublicIdentifier),t.forceQuirks=!0,this.emitCurrentDoctype(t),this.state=mf.DATA;break;case Nm.EOF:this._err(Fm.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 Nm.APOSTROPHE:this.state=mf.AFTER_DOCTYPE_PUBLIC_IDENTIFIER;break;case Nm.NULL:this._err(Fm.unexpectedNullCharacter),t.publicId+=km;break;case Nm.GREATER_THAN_SIGN:this._err(Fm.abruptDoctypePublicIdentifier),t.forceQuirks=!0,this.emitCurrentDoctype(t),this.state=mf.DATA;break;case Nm.EOF:this._err(Fm.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 Nm.SPACE:case Nm.LINE_FEED:case Nm.TABULATION:case Nm.FORM_FEED:this.state=mf.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS;break;case Nm.GREATER_THAN_SIGN:this.state=mf.DATA,this.emitCurrentDoctype(t);break;case Nm.QUOTATION_MARK:this._err(Fm.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers),t.systemId="",this.state=mf.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break;case Nm.APOSTROPHE:this._err(Fm.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers),t.systemId="",this.state=mf.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break;case Nm.EOF:this._err(Fm.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:this._err(Fm.missingQuoteBeforeDoctypeSystemIdentifier),t.forceQuirks=!0,this.state=mf.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateBetweenDoctypePublicAndSystemIdentifiers(e){const t=this.currentToken;switch(e){case Nm.SPACE:case Nm.LINE_FEED:case Nm.TABULATION:case Nm.FORM_FEED:break;case Nm.GREATER_THAN_SIGN:this.emitCurrentDoctype(t),this.state=mf.DATA;break;case Nm.QUOTATION_MARK:t.systemId="",this.state=mf.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break;case Nm.APOSTROPHE:t.systemId="",this.state=mf.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break;case Nm.EOF:this._err(Fm.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:this._err(Fm.missingQuoteBeforeDoctypeSystemIdentifier),t.forceQuirks=!0,this.state=mf.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateAfterDoctypeSystemKeyword(e){const t=this.currentToken;switch(e){case Nm.SPACE:case Nm.LINE_FEED:case Nm.TABULATION:case Nm.FORM_FEED:this.state=mf.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER;break;case Nm.QUOTATION_MARK:this._err(Fm.missingWhitespaceAfterDoctypeSystemKeyword),t.systemId="",this.state=mf.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break;case Nm.APOSTROPHE:this._err(Fm.missingWhitespaceAfterDoctypeSystemKeyword),t.systemId="",this.state=mf.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break;case Nm.GREATER_THAN_SIGN:this._err(Fm.missingDoctypeSystemIdentifier),t.forceQuirks=!0,this.state=mf.DATA,this.emitCurrentDoctype(t);break;case Nm.EOF:this._err(Fm.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:this._err(Fm.missingQuoteBeforeDoctypeSystemIdentifier),t.forceQuirks=!0,this.state=mf.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateBeforeDoctypeSystemIdentifier(e){const t=this.currentToken;switch(e){case Nm.SPACE:case Nm.LINE_FEED:case Nm.TABULATION:case Nm.FORM_FEED:break;case Nm.QUOTATION_MARK:t.systemId="",this.state=mf.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break;case Nm.APOSTROPHE:t.systemId="",this.state=mf.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break;case Nm.GREATER_THAN_SIGN:this._err(Fm.missingDoctypeSystemIdentifier),t.forceQuirks=!0,this.state=mf.DATA,this.emitCurrentDoctype(t);break;case Nm.EOF:this._err(Fm.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:this._err(Fm.missingQuoteBeforeDoctypeSystemIdentifier),t.forceQuirks=!0,this.state=mf.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateDoctypeSystemIdentifierDoubleQuoted(e){const t=this.currentToken;switch(e){case Nm.QUOTATION_MARK:this.state=mf.AFTER_DOCTYPE_SYSTEM_IDENTIFIER;break;case Nm.NULL:this._err(Fm.unexpectedNullCharacter),t.systemId+=km;break;case Nm.GREATER_THAN_SIGN:this._err(Fm.abruptDoctypeSystemIdentifier),t.forceQuirks=!0,this.emitCurrentDoctype(t),this.state=mf.DATA;break;case Nm.EOF:this._err(Fm.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 Nm.APOSTROPHE:this.state=mf.AFTER_DOCTYPE_SYSTEM_IDENTIFIER;break;case Nm.NULL:this._err(Fm.unexpectedNullCharacter),t.systemId+=km;break;case Nm.GREATER_THAN_SIGN:this._err(Fm.abruptDoctypeSystemIdentifier),t.forceQuirks=!0,this.emitCurrentDoctype(t),this.state=mf.DATA;break;case Nm.EOF:this._err(Fm.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 Nm.SPACE:case Nm.LINE_FEED:case Nm.TABULATION:case Nm.FORM_FEED:break;case Nm.GREATER_THAN_SIGN:this.emitCurrentDoctype(t),this.state=mf.DATA;break;case Nm.EOF:this._err(Fm.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:this._err(Fm.unexpectedCharacterAfterDoctypeSystemIdentifier),this.state=mf.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateBogusDoctype(e){const t=this.currentToken;switch(e){case Nm.GREATER_THAN_SIGN:this.emitCurrentDoctype(t),this.state=mf.DATA;break;case Nm.NULL:this._err(Fm.unexpectedNullCharacter);break;case Nm.EOF:this.emitCurrentDoctype(t),this._emitEOFToken()}}_stateCdataSection(e){switch(e){case Nm.RIGHT_SQUARE_BRACKET:this.state=mf.CDATA_SECTION_BRACKET;break;case Nm.EOF:this._err(Fm.eofInCdata),this._emitEOFToken();break;default:this._emitCodePoint(e)}}_stateCdataSectionBracket(e){e===Nm.RIGHT_SQUARE_BRACKET?this.state=mf.CDATA_SECTION_END:(this._emitChars("]"),this.state=mf.CDATA_SECTION,this._stateCdataSection(e))}_stateCdataSectionEnd(e){switch(e){case Nm.GREATER_THAN_SIGN:this.state=mf.DATA;break;case Nm.RIGHT_SQUARE_BRACKET:this._emitChars("]");break;default:this._emitChars("]]"),this.state=mf.CDATA_SECTION,this._stateCdataSection(e)}}_stateCharacterReference(e){e===Nm.NUMBER_SIGN?this.state=mf.NUMERIC_CHARACTER_REFERENCE:vf(e)?(this.state=mf.NAMED_CHARACTER_REFERENCE,this._stateNamedCharacterReference(e)):(this._flushCodePointConsumedAsCharacterReference(Nm.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(Fm.characterReferenceOutsideUnicodeRange),this.charRefCode=Nm.REPLACEMENT_CHARACTER;else if(Dm(this.charRefCode))this._err(Fm.surrogateCharacterReference),this.charRefCode=Nm.REPLACEMENT_CHARACTER;else if(Bm(this.charRefCode))this._err(Fm.noncharacterCharacterReference);else if(Pm(this.charRefCode)||this.charRefCode===Nm.CARRIAGE_RETURN){this._err(Fm.controlCharacterReference);const e=hf.get(this.charRefCode);void 0!==e&&(this.charRefCode=e)}this._flushCodePointConsumedAsCharacterReference(this.charRefCode),this._reconsumeInState(this.returnState,e)}}const Cf=new Set([tf.DD,tf.DT,tf.LI,tf.OPTGROUP,tf.OPTION,tf.P,tf.RB,tf.RP,tf.RT,tf.RTC]),xf=new Set([...Cf,tf.CAPTION,tf.COLGROUP,tf.TBODY,tf.TD,tf.TFOOT,tf.TH,tf.THEAD,tf.TR]),If=new Map([[tf.APPLET,Xm.HTML],[tf.CAPTION,Xm.HTML],[tf.HTML,Xm.HTML],[tf.MARQUEE,Xm.HTML],[tf.OBJECT,Xm.HTML],[tf.TABLE,Xm.HTML],[tf.TD,Xm.HTML],[tf.TEMPLATE,Xm.HTML],[tf.TH,Xm.HTML],[tf.ANNOTATION_XML,Xm.MATHML],[tf.MI,Xm.MATHML],[tf.MN,Xm.MATHML],[tf.MO,Xm.MATHML],[tf.MS,Xm.MATHML],[tf.MTEXT,Xm.MATHML],[tf.DESC,Xm.SVG],[tf.FOREIGN_OBJECT,Xm.SVG],[tf.TITLE,Xm.SVG]]),Of=[tf.H1,tf.H2,tf.H3,tf.H4,tf.H5,tf.H6],kf=[tf.TR,tf.TEMPLATE,tf.HTML],Nf=[tf.TBODY,tf.TFOOT,tf.THEAD,tf.TEMPLATE,tf.HTML],Rf=[tf.TABLE,tf.TEMPLATE,tf.HTML],Mf=[tf.TD,tf.TH];class Lf{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=tf.UNKNOWN,this.current=e}_indexOf(e){return this.items.lastIndexOf(e,this.stackTop)}_isInTemplate(){return this.currentTagId===tf.TEMPLATE&&this.treeAdapter.getNamespaceURI(this.current)===Xm.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])!==Xm.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(Rf,Xm.HTML)}clearBackToTableBodyContext(){this.clearBackTo(Nf,Xm.HTML)}clearBackToTableRowContext(){this.clearBackTo(kf,Xm.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]===tf.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]===tf.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===Xm.HTML)return!0;if(If.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(pf(t)&&n===Xm.HTML)return!0;if(If.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===Xm.HTML)return!0;if((n===tf.UL||n===tf.OL)&&r===Xm.HTML||If.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===Xm.HTML)return!0;if(n===tf.BUTTON&&r===Xm.HTML||If.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])===Xm.HTML){if(n===e)return!0;if(n===tf.TABLE||n===tf.TEMPLATE||n===tf.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])===Xm.HTML){if(t===tf.TBODY||t===tf.THEAD||t===tf.TFOOT)return!0;if(t===tf.TABLE||t===tf.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])===Xm.HTML){if(n===e)return!0;if(n!==tf.OPTION&&n!==tf.OPTGROUP)return!1}}return!0}generateImpliedEndTags(){for(;Cf.has(this.currentTagId);)this.pop()}generateImpliedEndTagsThoroughly(){for(;xf.has(this.currentTagId);)this.pop()}generateImpliedEndTagsWithExclusion(e){for(;this.currentTagId!==e&&xf.has(this.currentTagId);)this.pop()}}var Df;!function(e){e[e.Marker=0]="Marker",e[e.Element=1]="Element"}(Df=Df||(Df={}));const Pf={type:Df.Marker};class Bf{constructor(e){this.treeAdapter=e,this.entries=[],this.bookmark=null}_getNoahArkConditionCandidates(e,t){const n=[],r=t.length,a=this.treeAdapter.getTagName(e),o=this.treeAdapter.getNamespaceURI(e);for(let i=0;i[e.name,e.value])));let a=0;for(let o=0;or.get(e.name)===e.value))&&(a+=1,a>=3&&this.entries.splice(e.idx,1))}}insertMarker(){this.entries.unshift(Pf)}pushElement(e,t){this._ensureNoahArkCondition(e),this.entries.unshift({type:Df.Element,element:e,token:t})}insertElementAfterBookmark(e,t){const n=this.entries.indexOf(this.bookmark);this.entries.splice(n,0,{type:Df.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(Pf);e>=0?this.entries.splice(0,e+1):this.entries.length=0}getElementEntryInScopeWithTagName(e){const t=this.entries.find((t=>t.type===Df.Marker||this.treeAdapter.getTagName(t.element)===e));return t&&t.type===Df.Element?t:null}getElementEntry(e){return this.entries.find((t=>t.type===Df.Element&&t.element===e))}}function Ff(e){return{nodeName:"#text",value:e,parentNode:null}}const jf={createDocument:()=>({nodeName:"#document",mode:Qm.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 a=e.childNodes.find((e=>"#documentType"===e.nodeName));if(a)a.name=t,a.publicId=n,a.systemId=r;else{const a={nodeName:"#documentType",name:t,publicId:n,systemId:r,parentNode:null};jf.appendChild(e,a)}},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(jf.isTextNode(n))return void(n.value+=t)}jf.appendChild(e,Ff(t))},insertTextBefore(e,t,n){const r=e.childNodes[e.childNodes.indexOf(n)-1];r&&jf.isTextNode(r)?r.value+=t:jf.insertBefore(e,Ff(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}}},zf="html",Uf=["+//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//"],Hf=[...Uf,"-//w3c//dtd html 4.01 frameset//","-//w3c//dtd html 4.01 transitional//"],Gf=new Set(["-//w3o//dtd w3 html strict 3.0//en//","-/w3c/dtd html 4.0 transitional/en","html"]),Vf=["-//w3c//dtd xhtml 1.0 frameset//","-//w3c//dtd xhtml 1.0 transitional//"],qf=[...Vf,"-//w3c//dtd html 4.01 frameset//","-//w3c//dtd html 4.01 transitional//"];function Wf(e,t){return t.some((t=>e.startsWith(t)))}const Zf="text/html",$f="application/xhtml+xml",Yf="definitionurl",Kf="definitionURL",Xf=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]))),Jf=new Map([["xlink:actuate",{prefix:"xlink",name:"actuate",namespace:Xm.XLINK}],["xlink:arcrole",{prefix:"xlink",name:"arcrole",namespace:Xm.XLINK}],["xlink:href",{prefix:"xlink",name:"href",namespace:Xm.XLINK}],["xlink:role",{prefix:"xlink",name:"role",namespace:Xm.XLINK}],["xlink:show",{prefix:"xlink",name:"show",namespace:Xm.XLINK}],["xlink:title",{prefix:"xlink",name:"title",namespace:Xm.XLINK}],["xlink:type",{prefix:"xlink",name:"type",namespace:Xm.XLINK}],["xml:base",{prefix:"xml",name:"base",namespace:Xm.XML}],["xml:lang",{prefix:"xml",name:"lang",namespace:Xm.XML}],["xml:space",{prefix:"xml",name:"space",namespace:Xm.XML}],["xmlns",{prefix:"",name:"xmlns",namespace:Xm.XMLNS}],["xmlns:xlink",{prefix:"xmlns",name:"xlink",namespace:Xm.XMLNS}]]),Qf=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]))),eg=new Set([tf.B,tf.BIG,tf.BLOCKQUOTE,tf.BODY,tf.BR,tf.CENTER,tf.CODE,tf.DD,tf.DIV,tf.DL,tf.DT,tf.EM,tf.EMBED,tf.H1,tf.H2,tf.H3,tf.H4,tf.H5,tf.H6,tf.HEAD,tf.HR,tf.I,tf.IMG,tf.LI,tf.LISTING,tf.MENU,tf.META,tf.NOBR,tf.OL,tf.P,tf.PRE,tf.RUBY,tf.S,tf.SMALL,tf.SPAN,tf.STRONG,tf.STRIKE,tf.SUB,tf.SUP,tf.TABLE,tf.TT,tf.U,tf.UL,tf.VAR]);function tg(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=sg.INITIAL,this.originalInsertionMode=sg.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={...ug,...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 Tf(this.options,this),this.activeFormattingElements=new Bf(this.treeAdapter),this.fragmentContextID=n?cf(this.treeAdapter.getTagName(n)):tf.UNKNOWN,this._setContextModes(null!=n?n:this.document,this.fragmentContextID),this.openElements=new Lf(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={...ug,...t};null!=e||(e=n.treeAdapter.createElement(ef.TEMPLATE,Xm.HTML,[]));const r=n.treeAdapter.createElement("documentmock",Xm.HTML,[]),a=new this(n,r,e);return a.fragmentContextID===tf.TEMPLATE&&a.tmplInsertionModeStack.unshift(sg.IN_TEMPLATE),a._initTokenizerForFragmentParsing(),a._insertFakeRootElement(),a._resetInsertionMode(),a._findFormInFragmentContext(),a}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 a=null!==(r=e.location)&&void 0!==r?r:lg,o={code:t,startLine:a.startLine,startCol:a.startCol,startOffset:a.startOffset,endLine:n?a.startLine:a.endLine,endCol:n?a.startCol:a.endCol,endOffset:n?a.startOffset:a.endOffset};this.onParseError(o)}onItemPush(e,t,n){var r,a;null===(a=(r=this.treeAdapter).onItemPush)||void 0===a||a.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)===Xm.HTML;this.currentNotInHTML=!n,this.tokenizer.inForeignNode=!n&&!this._isIntegrationPoint(t,e)}_switchToTextParsing(e,t){this._insertElement(e,Xm.HTML),this.tokenizer.state=t,this.originalInsertionMode=this.insertionMode,this.insertionMode=sg.TEXT}switchToPlaintextParsing(){this.insertionMode=sg.TEXT,this.originalInsertionMode=sg.IN_BODY,this.tokenizer.state=ff.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)===ef.FORM){this.formElement=e;break}e=this.treeAdapter.getParentNode(e)}}_initTokenizerForFragmentParsing(){if(this.fragmentContext&&this.treeAdapter.getNamespaceURI(this.fragmentContext)===Xm.HTML)switch(this.fragmentContextID){case tf.TITLE:case tf.TEXTAREA:this.tokenizer.state=ff.RCDATA;break;case tf.STYLE:case tf.XMP:case tf.IFRAME:case tf.NOEMBED:case tf.NOFRAMES:case tf.NOSCRIPT:this.tokenizer.state=ff.RAWTEXT;break;case tf.SCRIPT:this.tokenizer.state=ff.SCRIPT_DATA;break;case tf.PLAINTEXT:this.tokenizer.state=ff.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,Xm.HTML,[]);this._attachElementToTree(n,null),this.openElements.push(n,t)}_insertTemplate(e){const t=this.treeAdapter.createElement(e.tagName,Xm.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(ef.HTML,Xm.HTML,[]);this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(e,null),this.treeAdapter.appendChild(this.openElements.current,e),this.openElements.push(e,tf.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),a=n?r.lastIndexOf(n):r.length,o=r[a-1];if(this.treeAdapter.getNodeSourceCodeLocation(o)){const{endLine:t,endCol:n,endOffset:r}=e.location;this.treeAdapter.updateNodeSourceCodeLocation(o,{endLine:t,endCol:n,endOffset:r})}else this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(o,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),a=t.type===jm.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,a)}}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!==tf.SVG||this.treeAdapter.getTagName(t)!==ef.ANNOTATION_XML||this.treeAdapter.getNamespaceURI(t)!==Xm.MATHML)&&(this.tokenizer.inForeignNode||(e.tagID===tf.MGLYPH||e.tagID===tf.MALIGNMARK)&&!this._isIntegrationPoint(n,t,Xm.HTML))}_processToken(e){switch(e.type){case jm.CHARACTER:this.onCharacter(e);break;case jm.NULL_CHARACTER:this.onNullCharacter(e);break;case jm.COMMENT:this.onComment(e);break;case jm.DOCTYPE:this.onDoctype(e);break;case jm.START_TAG:this._processStartTag(e);break;case jm.END_TAG:this.onEndTag(e);break;case jm.EOF:this.onEof(e);break;case jm.WHITESPACE_CHARACTER:this.onWhitespaceCharacter(e)}}_isIntegrationPoint(e,t,n){return function(e,t,n,r){return(!r||r===Xm.HTML)&&function(e,t,n){if(t===Xm.MATHML&&e===tf.ANNOTATION_XML)for(let r=0;re.type===Df.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=sg.IN_ROW}_closePElement(){this.openElements.generateImpliedEndTagsWithExclusion(tf.P),this.openElements.popUntilTagNamePopped(tf.P)}_resetInsertionMode(){for(let e=this.openElements.stackTop;e>=0;e--)switch(0===e&&this.fragmentContext?this.fragmentContextID:this.openElements.tagIDs[e]){case tf.TR:return void(this.insertionMode=sg.IN_ROW);case tf.TBODY:case tf.THEAD:case tf.TFOOT:return void(this.insertionMode=sg.IN_TABLE_BODY);case tf.CAPTION:return void(this.insertionMode=sg.IN_CAPTION);case tf.COLGROUP:return void(this.insertionMode=sg.IN_COLUMN_GROUP);case tf.TABLE:return void(this.insertionMode=sg.IN_TABLE);case tf.BODY:return void(this.insertionMode=sg.IN_BODY);case tf.FRAMESET:return void(this.insertionMode=sg.IN_FRAMESET);case tf.SELECT:return void this._resetInsertionModeForSelect(e);case tf.TEMPLATE:return void(this.insertionMode=this.tmplInsertionModeStack[0]);case tf.HTML:return void(this.insertionMode=this.headElement?sg.AFTER_HEAD:sg.BEFORE_HEAD);case tf.TD:case tf.TH:if(e>0)return void(this.insertionMode=sg.IN_CELL);break;case tf.HEAD:if(e>0)return void(this.insertionMode=sg.IN_HEAD)}this.insertionMode=sg.IN_BODY}_resetInsertionModeForSelect(e){if(e>0)for(let t=e-1;t>0;t--){const e=this.openElements.tagIDs[t];if(e===tf.TEMPLATE)break;if(e===tf.TABLE)return void(this.insertionMode=sg.IN_SELECT_IN_TABLE)}this.insertionMode=sg.IN_SELECT}_isElementCausesFosterParenting(e){return cg.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 tf.TEMPLATE:if(this.treeAdapter.getNamespaceURI(t)===Xm.HTML)return{parent:this.treeAdapter.getTemplateContent(t),beforeElement:null};break;case tf.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 df[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 sg.INITIAL:wg(this,e);break;case sg.BEFORE_HTML:Sg(this,e);break;case sg.BEFORE_HEAD:Ag(this,e);break;case sg.IN_HEAD:Cg(this,e);break;case sg.IN_HEAD_NO_SCRIPT:xg(this,e);break;case sg.AFTER_HEAD:Ig(this,e);break;case sg.IN_BODY:case sg.IN_CAPTION:case sg.IN_CELL:case sg.IN_TEMPLATE:Ng(this,e);break;case sg.TEXT:case sg.IN_SELECT:case sg.IN_SELECT_IN_TABLE:this._insertCharacters(e);break;case sg.IN_TABLE:case sg.IN_TABLE_BODY:case sg.IN_ROW:zg(this,e);break;case sg.IN_TABLE_TEXT:qg(this,e);break;case sg.IN_COLUMN_GROUP:Yg(this,e);break;case sg.AFTER_BODY:ab(this,e);break;case sg.AFTER_AFTER_BODY:ob(this,e)}}onNullCharacter(e){if(this.skipNextNewLine=!1,this.tokenizer.inForeignNode)!function(e,t){t.chars=km,e._insertCharacters(t)}(this,e);else switch(this.insertionMode){case sg.INITIAL:wg(this,e);break;case sg.BEFORE_HTML:Sg(this,e);break;case sg.BEFORE_HEAD:Ag(this,e);break;case sg.IN_HEAD:Cg(this,e);break;case sg.IN_HEAD_NO_SCRIPT:xg(this,e);break;case sg.AFTER_HEAD:Ig(this,e);break;case sg.TEXT:this._insertCharacters(e);break;case sg.IN_TABLE:case sg.IN_TABLE_BODY:case sg.IN_ROW:zg(this,e);break;case sg.IN_COLUMN_GROUP:Yg(this,e);break;case sg.AFTER_BODY:ab(this,e);break;case sg.AFTER_AFTER_BODY:ob(this,e)}}onComment(e){if(this.skipNextNewLine=!1,this.currentNotInHTML)vg(this,e);else switch(this.insertionMode){case sg.INITIAL:case sg.BEFORE_HTML:case sg.BEFORE_HEAD:case sg.IN_HEAD:case sg.IN_HEAD_NO_SCRIPT:case sg.AFTER_HEAD:case sg.IN_BODY:case sg.IN_TABLE:case sg.IN_CAPTION:case sg.IN_COLUMN_GROUP:case sg.IN_TABLE_BODY:case sg.IN_ROW:case sg.IN_CELL:case sg.IN_SELECT:case sg.IN_SELECT_IN_TABLE:case sg.IN_TEMPLATE:case sg.IN_FRAMESET:case sg.AFTER_FRAMESET:vg(this,e);break;case sg.IN_TABLE_TEXT:Wg(this,e);break;case sg.AFTER_BODY:!function(e,t){e._appendCommentNode(t,e.openElements.items[0])}(this,e);break;case sg.AFTER_AFTER_BODY:case sg.AFTER_AFTER_FRAMESET:!function(e,t){e._appendCommentNode(t,e.document)}(this,e)}}onDoctype(e){switch(this.skipNextNewLine=!1,this.insertionMode){case sg.INITIAL:!function(e,t){e._setDocumentType(t);const n=t.forceQuirks?Qm.QUIRKS:function(e){if(e.name!==zf)return Qm.QUIRKS;const{systemId:t}=e;if(t&&"http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd"===t.toLowerCase())return Qm.QUIRKS;let{publicId:n}=e;if(null!==n){if(n=n.toLowerCase(),Gf.has(n))return Qm.QUIRKS;let e=null===t?Hf:Uf;if(Wf(n,e))return Qm.QUIRKS;if(e=null===t?Vf:qf,Wf(n,e))return Qm.LIMITED_QUIRKS}return Qm.NO_QUIRKS}(t);(function(e){return e.name===zf&&null===e.publicId&&(null===e.systemId||"about:legacy-compat"===e.systemId)})(t)||e._err(t,Fm.nonConformingDoctype),e.treeAdapter.setDocumentMode(e.document,n),e.insertionMode=sg.BEFORE_HTML}(this,e);break;case sg.BEFORE_HEAD:case sg.IN_HEAD:case sg.IN_HEAD_NO_SCRIPT:case sg.AFTER_HEAD:this._err(e,Fm.misplacedDoctype);break;case sg.IN_TABLE_TEXT:Wg(this,e)}}onStartTag(e){this.skipNextNewLine=!1,this.currentToken=e,this._processStartTag(e),e.selfClosing&&!e.ackSelfClosing&&this._err(e,Fm.nonVoidHtmlElementStartTagWithTrailingSolidus)}_processStartTag(e){this.shouldProcessStartTagTokenInForeignContent(e)?function(e,t){if(function(e){const t=e.tagID;return t===tf.FONT&&e.attrs.some((e=>{let{name:t}=e;return t===Jm.COLOR||t===Jm.SIZE||t===Jm.FACE}))||eg.has(t)}(t))ib(e),e._startTagOutsideForeignContent(t);else{const n=e._getAdjustedCurrentElement(),r=e.treeAdapter.getNamespaceURI(n);r===Xm.MATHML?tg(t):r===Xm.SVG&&(function(e){const t=Qf.get(e.tagName);null!=t&&(e.tagName=t,e.tagID=cf(e.tagName))}(t),ng(t)),rg(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 sg.INITIAL:wg(this,e);break;case sg.BEFORE_HTML:!function(e,t){t.tagID===tf.HTML?(e._insertElement(t,Xm.HTML),e.insertionMode=sg.BEFORE_HEAD):Sg(e,t)}(this,e);break;case sg.BEFORE_HEAD:!function(e,t){switch(t.tagID){case tf.HTML:Pg(e,t);break;case tf.HEAD:e._insertElement(t,Xm.HTML),e.headElement=e.openElements.current,e.insertionMode=sg.IN_HEAD;break;default:Ag(e,t)}}(this,e);break;case sg.IN_HEAD:_g(this,e);break;case sg.IN_HEAD_NO_SCRIPT:!function(e,t){switch(t.tagID){case tf.HTML:Pg(e,t);break;case tf.BASEFONT:case tf.BGSOUND:case tf.HEAD:case tf.LINK:case tf.META:case tf.NOFRAMES:case tf.STYLE:_g(e,t);break;case tf.NOSCRIPT:e._err(t,Fm.nestedNoscriptInHead);break;default:xg(e,t)}}(this,e);break;case sg.AFTER_HEAD:!function(e,t){switch(t.tagID){case tf.HTML:Pg(e,t);break;case tf.BODY:e._insertElement(t,Xm.HTML),e.framesetOk=!1,e.insertionMode=sg.IN_BODY;break;case tf.FRAMESET:e._insertElement(t,Xm.HTML),e.insertionMode=sg.IN_FRAMESET;break;case tf.BASE:case tf.BASEFONT:case tf.BGSOUND:case tf.LINK:case tf.META:case tf.NOFRAMES:case tf.SCRIPT:case tf.STYLE:case tf.TEMPLATE:case tf.TITLE:e._err(t,Fm.abandonedHeadElementChild),e.openElements.push(e.headElement,tf.HEAD),_g(e,t),e.openElements.remove(e.headElement);break;case tf.HEAD:e._err(t,Fm.misplacedStartTagForHeadElement);break;default:Ig(e,t)}}(this,e);break;case sg.IN_BODY:Pg(this,e);break;case sg.IN_TABLE:Ug(this,e);break;case sg.IN_TABLE_TEXT:Wg(this,e);break;case sg.IN_CAPTION:!function(e,t){const n=t.tagID;Zg.has(n)?e.openElements.hasInTableScope(tf.CAPTION)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(tf.CAPTION),e.activeFormattingElements.clearToLastMarker(),e.insertionMode=sg.IN_TABLE,Ug(e,t)):Pg(e,t)}(this,e);break;case sg.IN_COLUMN_GROUP:$g(this,e);break;case sg.IN_TABLE_BODY:Kg(this,e);break;case sg.IN_ROW:Jg(this,e);break;case sg.IN_CELL:!function(e,t){const n=t.tagID;Zg.has(n)?(e.openElements.hasInTableScope(tf.TD)||e.openElements.hasInTableScope(tf.TH))&&(e._closeTableCell(),Jg(e,t)):Pg(e,t)}(this,e);break;case sg.IN_SELECT:eb(this,e);break;case sg.IN_SELECT_IN_TABLE:!function(e,t){const n=t.tagID;n===tf.CAPTION||n===tf.TABLE||n===tf.TBODY||n===tf.TFOOT||n===tf.THEAD||n===tf.TR||n===tf.TD||n===tf.TH?(e.openElements.popUntilTagNamePopped(tf.SELECT),e._resetInsertionMode(),e._processStartTag(t)):eb(e,t)}(this,e);break;case sg.IN_TEMPLATE:!function(e,t){switch(t.tagID){case tf.BASE:case tf.BASEFONT:case tf.BGSOUND:case tf.LINK:case tf.META:case tf.NOFRAMES:case tf.SCRIPT:case tf.STYLE:case tf.TEMPLATE:case tf.TITLE:_g(e,t);break;case tf.CAPTION:case tf.COLGROUP:case tf.TBODY:case tf.TFOOT:case tf.THEAD:e.tmplInsertionModeStack[0]=sg.IN_TABLE,e.insertionMode=sg.IN_TABLE,Ug(e,t);break;case tf.COL:e.tmplInsertionModeStack[0]=sg.IN_COLUMN_GROUP,e.insertionMode=sg.IN_COLUMN_GROUP,$g(e,t);break;case tf.TR:e.tmplInsertionModeStack[0]=sg.IN_TABLE_BODY,e.insertionMode=sg.IN_TABLE_BODY,Kg(e,t);break;case tf.TD:case tf.TH:e.tmplInsertionModeStack[0]=sg.IN_ROW,e.insertionMode=sg.IN_ROW,Jg(e,t);break;default:e.tmplInsertionModeStack[0]=sg.IN_BODY,e.insertionMode=sg.IN_BODY,Pg(e,t)}}(this,e);break;case sg.AFTER_BODY:!function(e,t){t.tagID===tf.HTML?Pg(e,t):ab(e,t)}(this,e);break;case sg.IN_FRAMESET:!function(e,t){switch(t.tagID){case tf.HTML:Pg(e,t);break;case tf.FRAMESET:e._insertElement(t,Xm.HTML);break;case tf.FRAME:e._appendElement(t,Xm.HTML),t.ackSelfClosing=!0;break;case tf.NOFRAMES:_g(e,t)}}(this,e);break;case sg.AFTER_FRAMESET:!function(e,t){switch(t.tagID){case tf.HTML:Pg(e,t);break;case tf.NOFRAMES:_g(e,t)}}(this,e);break;case sg.AFTER_AFTER_BODY:!function(e,t){t.tagID===tf.HTML?Pg(e,t):ob(e,t)}(this,e);break;case sg.AFTER_AFTER_FRAMESET:!function(e,t){switch(t.tagID){case tf.HTML:Pg(e,t);break;case tf.NOFRAMES:_g(e,t)}}(this,e)}}onEndTag(e){this.skipNextNewLine=!1,this.currentToken=e,this.currentNotInHTML?function(e,t){if(t.tagID===tf.P||t.tagID===tf.BR)return ib(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)===Xm.HTML){e._endTagOutsideForeignContent(t);break}const a=e.treeAdapter.getTagName(r);if(a.toLowerCase()===t.tagName){t.tagName=a,e.openElements.shortenToLength(n);break}}}(this,e):this._endTagOutsideForeignContent(e)}_endTagOutsideForeignContent(e){switch(this.insertionMode){case sg.INITIAL:wg(this,e);break;case sg.BEFORE_HTML:!function(e,t){const n=t.tagID;n!==tf.HTML&&n!==tf.HEAD&&n!==tf.BODY&&n!==tf.BR||Sg(e,t)}(this,e);break;case sg.BEFORE_HEAD:!function(e,t){const n=t.tagID;n===tf.HEAD||n===tf.BODY||n===tf.HTML||n===tf.BR?Ag(e,t):e._err(t,Fm.endTagWithoutMatchingOpenElement)}(this,e);break;case sg.IN_HEAD:!function(e,t){switch(t.tagID){case tf.HEAD:e.openElements.pop(),e.insertionMode=sg.AFTER_HEAD;break;case tf.BODY:case tf.BR:case tf.HTML:Cg(e,t);break;case tf.TEMPLATE:Tg(e,t);break;default:e._err(t,Fm.endTagWithoutMatchingOpenElement)}}(this,e);break;case sg.IN_HEAD_NO_SCRIPT:!function(e,t){switch(t.tagID){case tf.NOSCRIPT:e.openElements.pop(),e.insertionMode=sg.IN_HEAD;break;case tf.BR:xg(e,t);break;default:e._err(t,Fm.endTagWithoutMatchingOpenElement)}}(this,e);break;case sg.AFTER_HEAD:!function(e,t){switch(t.tagID){case tf.BODY:case tf.HTML:case tf.BR:Ig(e,t);break;case tf.TEMPLATE:Tg(e,t);break;default:e._err(t,Fm.endTagWithoutMatchingOpenElement)}}(this,e);break;case sg.IN_BODY:Fg(this,e);break;case sg.TEXT:!function(e,t){var n;t.tagID===tf.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 sg.IN_TABLE:Hg(this,e);break;case sg.IN_TABLE_TEXT:Wg(this,e);break;case sg.IN_CAPTION:!function(e,t){const n=t.tagID;switch(n){case tf.CAPTION:case tf.TABLE:e.openElements.hasInTableScope(tf.CAPTION)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(tf.CAPTION),e.activeFormattingElements.clearToLastMarker(),e.insertionMode=sg.IN_TABLE,n===tf.TABLE&&Hg(e,t));break;case tf.BODY:case tf.COL:case tf.COLGROUP:case tf.HTML:case tf.TBODY:case tf.TD:case tf.TFOOT:case tf.TH:case tf.THEAD:case tf.TR:break;default:Fg(e,t)}}(this,e);break;case sg.IN_COLUMN_GROUP:!function(e,t){switch(t.tagID){case tf.COLGROUP:e.openElements.currentTagId===tf.COLGROUP&&(e.openElements.pop(),e.insertionMode=sg.IN_TABLE);break;case tf.TEMPLATE:Tg(e,t);break;case tf.COL:break;default:Yg(e,t)}}(this,e);break;case sg.IN_TABLE_BODY:Xg(this,e);break;case sg.IN_ROW:Qg(this,e);break;case sg.IN_CELL:!function(e,t){const n=t.tagID;switch(n){case tf.TD:case tf.TH:e.openElements.hasInTableScope(n)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(n),e.activeFormattingElements.clearToLastMarker(),e.insertionMode=sg.IN_ROW);break;case tf.TABLE:case tf.TBODY:case tf.TFOOT:case tf.THEAD:case tf.TR:e.openElements.hasInTableScope(n)&&(e._closeTableCell(),Qg(e,t));break;case tf.BODY:case tf.CAPTION:case tf.COL:case tf.COLGROUP:case tf.HTML:break;default:Fg(e,t)}}(this,e);break;case sg.IN_SELECT:tb(this,e);break;case sg.IN_SELECT_IN_TABLE:!function(e,t){const n=t.tagID;n===tf.CAPTION||n===tf.TABLE||n===tf.TBODY||n===tf.TFOOT||n===tf.THEAD||n===tf.TR||n===tf.TD||n===tf.TH?e.openElements.hasInTableScope(n)&&(e.openElements.popUntilTagNamePopped(tf.SELECT),e._resetInsertionMode(),e.onEndTag(t)):tb(e,t)}(this,e);break;case sg.IN_TEMPLATE:!function(e,t){t.tagID===tf.TEMPLATE&&Tg(e,t)}(this,e);break;case sg.AFTER_BODY:rb(this,e);break;case sg.IN_FRAMESET:!function(e,t){t.tagID!==tf.FRAMESET||e.openElements.isRootHtmlElementCurrent()||(e.openElements.pop(),e.fragmentContext||e.openElements.currentTagId===tf.FRAMESET||(e.insertionMode=sg.AFTER_FRAMESET))}(this,e);break;case sg.AFTER_FRAMESET:!function(e,t){t.tagID===tf.HTML&&(e.insertionMode=sg.AFTER_AFTER_FRAMESET)}(this,e);break;case sg.AFTER_AFTER_BODY:ob(this,e)}}onEof(e){switch(this.insertionMode){case sg.INITIAL:wg(this,e);break;case sg.BEFORE_HTML:Sg(this,e);break;case sg.BEFORE_HEAD:Ag(this,e);break;case sg.IN_HEAD:Cg(this,e);break;case sg.IN_HEAD_NO_SCRIPT:xg(this,e);break;case sg.AFTER_HEAD:Ig(this,e);break;case sg.IN_BODY:case sg.IN_TABLE:case sg.IN_CAPTION:case sg.IN_COLUMN_GROUP:case sg.IN_TABLE_BODY:case sg.IN_ROW:case sg.IN_CELL:case sg.IN_SELECT:case sg.IN_SELECT_IN_TABLE:jg(this,e);break;case sg.TEXT:!function(e,t){e._err(t,Fm.eofInElementThatCanContainOnlyText),e.openElements.pop(),e.insertionMode=e.originalInsertionMode,e.onEof(t)}(this,e);break;case sg.IN_TABLE_TEXT:Wg(this,e);break;case sg.IN_TEMPLATE:nb(this,e);break;case sg.AFTER_BODY:case sg.IN_FRAMESET:case sg.AFTER_FRAMESET:case sg.AFTER_AFTER_BODY:case sg.AFTER_AFTER_FRAMESET:Eg(this,e)}}onWhitespaceCharacter(e){if(this.skipNextNewLine&&(this.skipNextNewLine=!1,e.chars.charCodeAt(0)===Nm.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 sg.IN_HEAD:case sg.IN_HEAD_NO_SCRIPT:case sg.AFTER_HEAD:case sg.TEXT:case sg.IN_COLUMN_GROUP:case sg.IN_SELECT:case sg.IN_SELECT_IN_TABLE:case sg.IN_FRAMESET:case sg.AFTER_FRAMESET:this._insertCharacters(e);break;case sg.IN_BODY:case sg.IN_CAPTION:case sg.IN_CELL:case sg.IN_TEMPLATE:case sg.AFTER_BODY:case sg.AFTER_AFTER_BODY:case sg.AFTER_AFTER_FRAMESET:kg(this,e);break;case sg.IN_TABLE:case sg.IN_TABLE_BODY:case sg.IN_ROW:zg(this,e);break;case sg.IN_TABLE_TEXT:Vg(this,e)}}}function pg(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):Bg(e,t),n}function hg(e,t){let n=null,r=e.openElements.stackTop;for(;r>=0;r--){const a=e.openElements.items[r];if(a===t.element)break;e._isSpecialElement(a,e.openElements.tagIDs[r])&&(n=a)}return n||(e.openElements.shortenToLength(r<0?0:r),e.activeFormattingElements.removeEntry(t)),n}function mg(e,t,n){let r=t,a=e.openElements.getCommonAncestor(t);for(let o=0,i=a;i!==n;o++,i=a){a=e.openElements.getCommonAncestor(i);const n=e.activeFormattingElements.getElementEntry(i),s=n&&o>=ig;!n||s?(s&&e.activeFormattingElements.removeEntry(n),e.openElements.remove(i)):(i=fg(e,n),r===t&&(e.activeFormattingElements.bookmark=n),e.treeAdapter.detachNode(r),e.treeAdapter.appendChild(i,r),r=i)}return r}function fg(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 gg(e,t,n){const r=cf(e.treeAdapter.getTagName(t));if(e._isElementCausesFosterParenting(r))e._fosterParentElement(n);else{const a=e.treeAdapter.getNamespaceURI(t);r===tf.TEMPLATE&&a===Xm.HTML&&(t=e.treeAdapter.getTemplateContent(t)),e.treeAdapter.appendChild(t,n)}}function bg(e,t,n){const r=e.treeAdapter.getNamespaceURI(n.element),{token:a}=n,o=e.treeAdapter.createElement(a.tagName,r,a.attrs);e._adoptNodes(t,o),e.treeAdapter.appendChild(t,o),e.activeFormattingElements.insertElementAfterBookmark(o,a),e.activeFormattingElements.removeEntry(n),e.openElements.remove(n.element),e.openElements.insertAfter(t,o,a.tagID)}function yg(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 wg(e,t){e._err(t,Fm.missingDoctype,!0),e.treeAdapter.setDocumentMode(e.document,Qm.QUIRKS),e.insertionMode=sg.BEFORE_HTML,e._processToken(t)}function Sg(e,t){e._insertFakeRootElement(),e.insertionMode=sg.BEFORE_HEAD,e._processToken(t)}function Ag(e,t){e._insertFakeElement(ef.HEAD,tf.HEAD),e.headElement=e.openElements.current,e.insertionMode=sg.IN_HEAD,e._processToken(t)}function _g(e,t){switch(t.tagID){case tf.HTML:Pg(e,t);break;case tf.BASE:case tf.BASEFONT:case tf.BGSOUND:case tf.LINK:case tf.META:e._appendElement(t,Xm.HTML),t.ackSelfClosing=!0;break;case tf.TITLE:e._switchToTextParsing(t,ff.RCDATA);break;case tf.NOSCRIPT:e.options.scriptingEnabled?e._switchToTextParsing(t,ff.RAWTEXT):(e._insertElement(t,Xm.HTML),e.insertionMode=sg.IN_HEAD_NO_SCRIPT);break;case tf.NOFRAMES:case tf.STYLE:e._switchToTextParsing(t,ff.RAWTEXT);break;case tf.SCRIPT:e._switchToTextParsing(t,ff.SCRIPT_DATA);break;case tf.TEMPLATE:e._insertTemplate(t),e.activeFormattingElements.insertMarker(),e.framesetOk=!1,e.insertionMode=sg.IN_TEMPLATE,e.tmplInsertionModeStack.unshift(sg.IN_TEMPLATE);break;case tf.HEAD:e._err(t,Fm.misplacedStartTagForHeadElement);break;default:Cg(e,t)}}function Tg(e,t){e.openElements.tmplCount>0?(e.openElements.generateImpliedEndTagsThoroughly(),e.openElements.currentTagId!==tf.TEMPLATE&&e._err(t,Fm.closingOfElementWithOpenChildElements),e.openElements.popUntilTagNamePopped(tf.TEMPLATE),e.activeFormattingElements.clearToLastMarker(),e.tmplInsertionModeStack.shift(),e._resetInsertionMode()):e._err(t,Fm.endTagWithoutMatchingOpenElement)}function Cg(e,t){e.openElements.pop(),e.insertionMode=sg.AFTER_HEAD,e._processToken(t)}function xg(e,t){const n=t.type===jm.EOF?Fm.openElementsLeftAfterEof:Fm.disallowedContentInNoscriptInHead;e._err(t,n),e.openElements.pop(),e.insertionMode=sg.IN_HEAD,e._processToken(t)}function Ig(e,t){e._insertFakeElement(ef.BODY,tf.BODY),e.insertionMode=sg.IN_BODY,Og(e,t)}function Og(e,t){switch(t.type){case jm.CHARACTER:Ng(e,t);break;case jm.WHITESPACE_CHARACTER:kg(e,t);break;case jm.COMMENT:vg(e,t);break;case jm.START_TAG:Pg(e,t);break;case jm.END_TAG:Fg(e,t);break;case jm.EOF:jg(e,t)}}function kg(e,t){e._reconstructActiveFormattingElements(),e._insertCharacters(t)}function Ng(e,t){e._reconstructActiveFormattingElements(),e._insertCharacters(t),e.framesetOk=!1}function Rg(e,t){e._reconstructActiveFormattingElements(),e._appendElement(t,Xm.HTML),e.framesetOk=!1,t.ackSelfClosing=!0}function Mg(e){const t=Um(e,Jm.TYPE);return null!=t&&t.toLowerCase()===ag}function Lg(e,t){e._switchToTextParsing(t,ff.RAWTEXT)}function Dg(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,Xm.HTML)}function Pg(e,t){switch(t.tagID){case tf.I:case tf.S:case tf.B:case tf.U:case tf.EM:case tf.TT:case tf.BIG:case tf.CODE:case tf.FONT:case tf.SMALL:case tf.STRIKE:case tf.STRONG:!function(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,Xm.HTML),e.activeFormattingElements.pushElement(e.openElements.current,t)}(e,t);break;case tf.A:!function(e,t){const n=e.activeFormattingElements.getElementEntryInScopeWithTagName(ef.A);n&&(yg(e,t),e.openElements.remove(n.element),e.activeFormattingElements.removeEntry(n)),e._reconstructActiveFormattingElements(),e._insertElement(t,Xm.HTML),e.activeFormattingElements.pushElement(e.openElements.current,t)}(e,t);break;case tf.H1:case tf.H2:case tf.H3:case tf.H4:case tf.H5:case tf.H6:!function(e,t){e.openElements.hasInButtonScope(tf.P)&&e._closePElement(),pf(e.openElements.currentTagId)&&e.openElements.pop(),e._insertElement(t,Xm.HTML)}(e,t);break;case tf.P:case tf.DL:case tf.OL:case tf.UL:case tf.DIV:case tf.DIR:case tf.NAV:case tf.MAIN:case tf.MENU:case tf.ASIDE:case tf.CENTER:case tf.FIGURE:case tf.FOOTER:case tf.HEADER:case tf.HGROUP:case tf.DIALOG:case tf.DETAILS:case tf.ADDRESS:case tf.ARTICLE:case tf.SECTION:case tf.SUMMARY:case tf.FIELDSET:case tf.BLOCKQUOTE:case tf.FIGCAPTION:!function(e,t){e.openElements.hasInButtonScope(tf.P)&&e._closePElement(),e._insertElement(t,Xm.HTML)}(e,t);break;case tf.LI:case tf.DD:case tf.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===tf.LI&&t===tf.LI||(n===tf.DD||n===tf.DT)&&(t===tf.DD||t===tf.DT)){e.openElements.generateImpliedEndTagsWithExclusion(t),e.openElements.popUntilTagNamePopped(t);break}if(t!==tf.ADDRESS&&t!==tf.DIV&&t!==tf.P&&e._isSpecialElement(e.openElements.items[r],t))break}e.openElements.hasInButtonScope(tf.P)&&e._closePElement(),e._insertElement(t,Xm.HTML)}(e,t);break;case tf.BR:case tf.IMG:case tf.WBR:case tf.AREA:case tf.EMBED:case tf.KEYGEN:Rg(e,t);break;case tf.HR:!function(e,t){e.openElements.hasInButtonScope(tf.P)&&e._closePElement(),e._appendElement(t,Xm.HTML),e.framesetOk=!1,t.ackSelfClosing=!0}(e,t);break;case tf.RB:case tf.RTC:!function(e,t){e.openElements.hasInScope(tf.RUBY)&&e.openElements.generateImpliedEndTags(),e._insertElement(t,Xm.HTML)}(e,t);break;case tf.RT:case tf.RP:!function(e,t){e.openElements.hasInScope(tf.RUBY)&&e.openElements.generateImpliedEndTagsWithExclusion(tf.RTC),e._insertElement(t,Xm.HTML)}(e,t);break;case tf.PRE:case tf.LISTING:!function(e,t){e.openElements.hasInButtonScope(tf.P)&&e._closePElement(),e._insertElement(t,Xm.HTML),e.skipNextNewLine=!0,e.framesetOk=!1}(e,t);break;case tf.XMP:!function(e,t){e.openElements.hasInButtonScope(tf.P)&&e._closePElement(),e._reconstructActiveFormattingElements(),e.framesetOk=!1,e._switchToTextParsing(t,ff.RAWTEXT)}(e,t);break;case tf.SVG:!function(e,t){e._reconstructActiveFormattingElements(),ng(t),rg(t),t.selfClosing?e._appendElement(t,Xm.SVG):e._insertElement(t,Xm.SVG),t.ackSelfClosing=!0}(e,t);break;case tf.HTML:!function(e,t){0===e.openElements.tmplCount&&e.treeAdapter.adoptAttributes(e.openElements.items[0],t.attrs)}(e,t);break;case tf.BASE:case tf.LINK:case tf.META:case tf.STYLE:case tf.TITLE:case tf.SCRIPT:case tf.BGSOUND:case tf.BASEFONT:case tf.TEMPLATE:_g(e,t);break;case tf.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 tf.FORM:!function(e,t){const n=e.openElements.tmplCount>0;e.formElement&&!n||(e.openElements.hasInButtonScope(tf.P)&&e._closePElement(),e._insertElement(t,Xm.HTML),n||(e.formElement=e.openElements.current))}(e,t);break;case tf.NOBR:!function(e,t){e._reconstructActiveFormattingElements(),e.openElements.hasInScope(tf.NOBR)&&(yg(e,t),e._reconstructActiveFormattingElements()),e._insertElement(t,Xm.HTML),e.activeFormattingElements.pushElement(e.openElements.current,t)}(e,t);break;case tf.MATH:!function(e,t){e._reconstructActiveFormattingElements(),tg(t),rg(t),t.selfClosing?e._appendElement(t,Xm.MATHML):e._insertElement(t,Xm.MATHML),t.ackSelfClosing=!0}(e,t);break;case tf.TABLE:!function(e,t){e.treeAdapter.getDocumentMode(e.document)!==Qm.QUIRKS&&e.openElements.hasInButtonScope(tf.P)&&e._closePElement(),e._insertElement(t,Xm.HTML),e.framesetOk=!1,e.insertionMode=sg.IN_TABLE}(e,t);break;case tf.INPUT:!function(e,t){e._reconstructActiveFormattingElements(),e._appendElement(t,Xm.HTML),Mg(t)||(e.framesetOk=!1),t.ackSelfClosing=!0}(e,t);break;case tf.PARAM:case tf.TRACK:case tf.SOURCE:!function(e,t){e._appendElement(t,Xm.HTML),t.ackSelfClosing=!0}(e,t);break;case tf.IMAGE:!function(e,t){t.tagName=ef.IMG,t.tagID=tf.IMG,Rg(e,t)}(e,t);break;case tf.BUTTON:!function(e,t){e.openElements.hasInScope(tf.BUTTON)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(tf.BUTTON)),e._reconstructActiveFormattingElements(),e._insertElement(t,Xm.HTML),e.framesetOk=!1}(e,t);break;case tf.APPLET:case tf.OBJECT:case tf.MARQUEE:!function(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,Xm.HTML),e.activeFormattingElements.insertMarker(),e.framesetOk=!1}(e,t);break;case tf.IFRAME:!function(e,t){e.framesetOk=!1,e._switchToTextParsing(t,ff.RAWTEXT)}(e,t);break;case tf.SELECT:!function(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,Xm.HTML),e.framesetOk=!1,e.insertionMode=e.insertionMode===sg.IN_TABLE||e.insertionMode===sg.IN_CAPTION||e.insertionMode===sg.IN_TABLE_BODY||e.insertionMode===sg.IN_ROW||e.insertionMode===sg.IN_CELL?sg.IN_SELECT_IN_TABLE:sg.IN_SELECT}(e,t);break;case tf.OPTION:case tf.OPTGROUP:!function(e,t){e.openElements.currentTagId===tf.OPTION&&e.openElements.pop(),e._reconstructActiveFormattingElements(),e._insertElement(t,Xm.HTML)}(e,t);break;case tf.NOEMBED:Lg(e,t);break;case tf.FRAMESET:!function(e,t){const n=e.openElements.tryPeekProperlyNestedBodyElement();e.framesetOk&&n&&(e.treeAdapter.detachNode(n),e.openElements.popAllUpToHtmlElement(),e._insertElement(t,Xm.HTML),e.insertionMode=sg.IN_FRAMESET)}(e,t);break;case tf.TEXTAREA:!function(e,t){e._insertElement(t,Xm.HTML),e.skipNextNewLine=!0,e.tokenizer.state=ff.RCDATA,e.originalInsertionMode=e.insertionMode,e.framesetOk=!1,e.insertionMode=sg.TEXT}(e,t);break;case tf.NOSCRIPT:e.options.scriptingEnabled?Lg(e,t):Dg(e,t);break;case tf.PLAINTEXT:!function(e,t){e.openElements.hasInButtonScope(tf.P)&&e._closePElement(),e._insertElement(t,Xm.HTML),e.tokenizer.state=ff.PLAINTEXT}(e,t);break;case tf.COL:case tf.TH:case tf.TD:case tf.TR:case tf.HEAD:case tf.FRAME:case tf.TBODY:case tf.TFOOT:case tf.THEAD:case tf.CAPTION:case tf.COLGROUP:break;default:Dg(e,t)}}function Bg(e,t){const n=t.tagName,r=t.tagID;for(let a=e.openElements.stackTop;a>0;a--){const t=e.openElements.items[a],o=e.openElements.tagIDs[a];if(r===o&&(r!==tf.UNKNOWN||e.treeAdapter.getTagName(t)===n)){e.openElements.generateImpliedEndTagsWithExclusion(r),e.openElements.stackTop>=a&&e.openElements.shortenToLength(a);break}if(e._isSpecialElement(t,o))break}}function Fg(e,t){switch(t.tagID){case tf.A:case tf.B:case tf.I:case tf.S:case tf.U:case tf.EM:case tf.TT:case tf.BIG:case tf.CODE:case tf.FONT:case tf.NOBR:case tf.SMALL:case tf.STRIKE:case tf.STRONG:yg(e,t);break;case tf.P:!function(e){e.openElements.hasInButtonScope(tf.P)||e._insertFakeElement(ef.P,tf.P),e._closePElement()}(e);break;case tf.DL:case tf.UL:case tf.OL:case tf.DIR:case tf.DIV:case tf.NAV:case tf.PRE:case tf.MAIN:case tf.MENU:case tf.ASIDE:case tf.BUTTON:case tf.CENTER:case tf.FIGURE:case tf.FOOTER:case tf.HEADER:case tf.HGROUP:case tf.DIALOG:case tf.ADDRESS:case tf.ARTICLE:case tf.DETAILS:case tf.SECTION:case tf.SUMMARY:case tf.LISTING:case tf.FIELDSET:case tf.BLOCKQUOTE:case tf.FIGCAPTION:!function(e,t){const n=t.tagID;e.openElements.hasInScope(n)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(n))}(e,t);break;case tf.LI:!function(e){e.openElements.hasInListItemScope(tf.LI)&&(e.openElements.generateImpliedEndTagsWithExclusion(tf.LI),e.openElements.popUntilTagNamePopped(tf.LI))}(e);break;case tf.DD:case tf.DT:!function(e,t){const n=t.tagID;e.openElements.hasInScope(n)&&(e.openElements.generateImpliedEndTagsWithExclusion(n),e.openElements.popUntilTagNamePopped(n))}(e,t);break;case tf.H1:case tf.H2:case tf.H3:case tf.H4:case tf.H5:case tf.H6:!function(e){e.openElements.hasNumberedHeaderInScope()&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilNumberedHeaderPopped())}(e);break;case tf.BR:!function(e){e._reconstructActiveFormattingElements(),e._insertFakeElement(ef.BR,tf.BR),e.openElements.pop(),e.framesetOk=!1}(e);break;case tf.BODY:!function(e,t){if(e.openElements.hasInScope(tf.BODY)&&(e.insertionMode=sg.AFTER_BODY,e.options.sourceCodeLocationInfo)){const n=e.openElements.tryPeekProperlyNestedBodyElement();n&&e._setEndLocation(n,t)}}(e,t);break;case tf.HTML:!function(e,t){e.openElements.hasInScope(tf.BODY)&&(e.insertionMode=sg.AFTER_BODY,rb(e,t))}(e,t);break;case tf.FORM:!function(e){const t=e.openElements.tmplCount>0,{formElement:n}=e;t||(e.formElement=null),(n||t)&&e.openElements.hasInScope(tf.FORM)&&(e.openElements.generateImpliedEndTags(),t?e.openElements.popUntilTagNamePopped(tf.FORM):n&&e.openElements.remove(n))}(e);break;case tf.APPLET:case tf.OBJECT:case tf.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 tf.TEMPLATE:Tg(e,t);break;default:Bg(e,t)}}function jg(e,t){e.tmplInsertionModeStack.length>0?nb(e,t):Eg(e,t)}function zg(e,t){if(cg.has(e.openElements.currentTagId))switch(e.pendingCharacterTokens.length=0,e.hasNonWhitespacePendingCharacterToken=!1,e.originalInsertionMode=e.insertionMode,e.insertionMode=sg.IN_TABLE_TEXT,t.type){case jm.CHARACTER:qg(e,t);break;case jm.WHITESPACE_CHARACTER:Vg(e,t)}else Gg(e,t)}function Ug(e,t){switch(t.tagID){case tf.TD:case tf.TH:case tf.TR:!function(e,t){e.openElements.clearBackToTableContext(),e._insertFakeElement(ef.TBODY,tf.TBODY),e.insertionMode=sg.IN_TABLE_BODY,Kg(e,t)}(e,t);break;case tf.STYLE:case tf.SCRIPT:case tf.TEMPLATE:_g(e,t);break;case tf.COL:!function(e,t){e.openElements.clearBackToTableContext(),e._insertFakeElement(ef.COLGROUP,tf.COLGROUP),e.insertionMode=sg.IN_COLUMN_GROUP,$g(e,t)}(e,t);break;case tf.FORM:!function(e,t){e.formElement||0!==e.openElements.tmplCount||(e._insertElement(t,Xm.HTML),e.formElement=e.openElements.current,e.openElements.pop())}(e,t);break;case tf.TABLE:!function(e,t){e.openElements.hasInTableScope(tf.TABLE)&&(e.openElements.popUntilTagNamePopped(tf.TABLE),e._resetInsertionMode(),e._processStartTag(t))}(e,t);break;case tf.TBODY:case tf.TFOOT:case tf.THEAD:!function(e,t){e.openElements.clearBackToTableContext(),e._insertElement(t,Xm.HTML),e.insertionMode=sg.IN_TABLE_BODY}(e,t);break;case tf.INPUT:!function(e,t){Mg(t)?e._appendElement(t,Xm.HTML):Gg(e,t),t.ackSelfClosing=!0}(e,t);break;case tf.CAPTION:!function(e,t){e.openElements.clearBackToTableContext(),e.activeFormattingElements.insertMarker(),e._insertElement(t,Xm.HTML),e.insertionMode=sg.IN_CAPTION}(e,t);break;case tf.COLGROUP:!function(e,t){e.openElements.clearBackToTableContext(),e._insertElement(t,Xm.HTML),e.insertionMode=sg.IN_COLUMN_GROUP}(e,t);break;default:Gg(e,t)}}function Hg(e,t){switch(t.tagID){case tf.TABLE:e.openElements.hasInTableScope(tf.TABLE)&&(e.openElements.popUntilTagNamePopped(tf.TABLE),e._resetInsertionMode());break;case tf.TEMPLATE:Tg(e,t);break;case tf.BODY:case tf.CAPTION:case tf.COL:case tf.COLGROUP:case tf.HTML:case tf.TBODY:case tf.TD:case tf.TFOOT:case tf.TH:case tf.THEAD:case tf.TR:break;default:Gg(e,t)}}function Gg(e,t){const n=e.fosterParentingEnabled;e.fosterParentingEnabled=!0,Og(e,t),e.fosterParentingEnabled=n}function Vg(e,t){e.pendingCharacterTokens.push(t)}function qg(e,t){e.pendingCharacterTokens.push(t),e.hasNonWhitespacePendingCharacterToken=!0}function Wg(e,t){let n=0;if(e.hasNonWhitespacePendingCharacterToken)for(;n0&&e.openElements.currentTagId===tf.OPTION&&e.openElements.tagIDs[e.openElements.stackTop-1]===tf.OPTGROUP&&e.openElements.pop(),e.openElements.currentTagId===tf.OPTGROUP&&e.openElements.pop();break;case tf.OPTION:e.openElements.currentTagId===tf.OPTION&&e.openElements.pop();break;case tf.SELECT:e.openElements.hasInSelectScope(tf.SELECT)&&(e.openElements.popUntilTagNamePopped(tf.SELECT),e._resetInsertionMode());break;case tf.TEMPLATE:Tg(e,t)}}function nb(e,t){e.openElements.tmplCount>0?(e.openElements.popUntilTagNamePopped(tf.TEMPLATE),e.activeFormattingElements.clearToLastMarker(),e.tmplInsertionModeStack.shift(),e._resetInsertionMode(),e.onEof(t)):Eg(e,t)}function rb(e,t){var n;if(t.tagID===tf.HTML){if(e.fragmentContext||(e.insertionMode=sg.AFTER_AFTER_BODY),e.options.sourceCodeLocationInfo&&e.openElements.tagIDs[0]===tf.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 ab(e,t)}function ab(e,t){e.insertionMode=sg.IN_BODY,Og(e,t)}function ob(e,t){e.insertionMode=sg.IN_BODY,Og(e,t)}function ib(e){for(;e.treeAdapter.getNamespaceURI(e.openElements.current)!==Xm.HTML&&!e._isIntegrationPoint(e.openElements.currentTagId,e.openElements.current);)e.openElements.pop()}function sb(e,t){return dg.parse(e,t)}function lb(e,t,n){"string"==typeof e&&(n=t,t=e,e=null);const r=dg.getFragmentParser(e,n);return r.tokenizer.write(t,!0),r.getFragment()}function cb(e){return db(e&&e.line)+":"+db(e&&e.column)}function ub(e){return cb(e&&e.start)+"-"+cb(e&&e.end)}function db(e){return e&&"number"==typeof e?e:1}new Set([ef.AREA,ef.BASE,ef.BASEFONT,ef.BGSOUND,ef.BR,ef.COL,ef.EMBED,ef.FRAME,ef.HR,ef.IMG,ef.INPUT,ef.KEYGEN,ef.LINK,ef.META,ef.PARAM,ef.SOURCE,ef.TRACK,ef.WBR]);class pb extends Error{constructor(e,t,n){super(),"string"==typeof t&&(n=t,t=void 0);let r="",a={},o=!1;if(t&&(a="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:!a.cause&&e&&(o=!0,r=e.message,a.cause=e),!a.ruleId&&!a.source&&"string"==typeof n){const e=n.indexOf(":");-1===e?a.ruleId=n:(a.source=n.slice(0,e),a.ruleId=n.slice(e+1))}if(!a.place&&a.ancestors&&a.ancestors){const e=a.ancestors[a.ancestors.length-1];e&&(a.place=e.position)}const i=a.place&&"start"in a.place?a.place.start:a.place;var s;this.ancestors=a.ancestors||void 0,this.cause=a.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=a.place)&&"object"==typeof s?"position"in s||"type"in s?ub(s.position):"start"in s||"end"in s?ub(s):"line"in s||"column"in s?cb(s):"":"")||"1:1",this.place=a.place||void 0,this.reason=this.message,this.ruleId=a.ruleId||void 0,this.source=a.source||void 0,this.stack=o&&a.cause&&"string"==typeof a.cause.stack?a.cause.stack:"",this.actual,this.expected,this.note,this.url}}pb.prototype.file="",pb.prototype.name="",pb.prototype.reason="",pb.prototype.message="",pb.prototype.stack="",pb.prototype.column=void 0,pb.prototype.line=void 0,pb.prototype.ancestors=void 0,pb.prototype.cause=void 0,pb.prototype.fatal=void 0,pb.prototype.place=void 0,pb.prototype.ruleId=void 0,pb.prototype.source=void 0;const hb=function(e,t){if(void 0!==t&&"string"!=typeof t)throw new TypeError('"ext" argument must be a string');yb(e);let n,r=0,a=-1,o=e.length;if(void 0===t||0===t.length||t.length>e.length){for(;o--;)if(47===e.codePointAt(o)){if(n){r=o+1;break}}else a<0&&(n=!0,a=o+1);return a<0?"":e.slice(r,a)}if(t===e)return"";let i=-1,s=t.length-1;for(;o--;)if(47===e.codePointAt(o)){if(n){r=o+1;break}}else i<0&&(n=!0,i=o+1),s>-1&&(e.codePointAt(o)===t.codePointAt(s--)?s<0&&(a=o):(s=-1,a=i));return r===a?a=i:a<0&&(a=e.length),e.slice(r,a)},mb=function(e){if(yb(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)},fb=function(e){yb(e);let t,n=e.length,r=-1,a=0,o=-1,i=0;for(;n--;){const s=e.codePointAt(n);if(47!==s)r<0&&(t=!0,r=n+1),46===s?o<0?o=n:1!==i&&(i=1):o>-1&&(i=-1);else if(t){a=n+1;break}}return o<0||r<0||0===i||1===i&&o===r-1&&o===a+1?"":e.slice(o,r)},gb=function(){let e,t=-1;for(var n=arguments.length,r=new Array(n),a=0;a2){if(r=a.lastIndexOf("/"),r!==a.length-1){r<0?(a="",o=0):(a=a.slice(0,r),o=a.length-1-a.lastIndexOf("/")),i=l,s=0;continue}}else if(a.length>0){a="",o=0,i=l,s=0;continue}t&&(a=a.length>0?a+"/..":"..",o=2)}else a.length>0?a+="/"+e.slice(i+1,l):a=e.slice(i+1,l),o=l-i-1;i=l,s=0}else 46===n&&s>-1?s++:s=-1}return a}(e,!t);return 0!==n.length||t||(n="."),n.length>0&&47===e.codePointAt(e.length-1)&&(n+="/"),t?"/"+n:n}(e)},bb="/";function yb(e){if("string"!=typeof e)throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const vb=function(){return"/"};function Eb(e){return Boolean(null!==e&&"object"==typeof e&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&void 0===e.auth)}const wb=["history","path","basename","stem","extname","dirname"];class Sb{constructor(e){let t;t=e?Eb(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=vb(),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 `
\n \n \n \n );\n};\n\nexport default ReportedUsage;\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 { createSlice, PayloadAction } from \"@reduxjs/toolkit\";\nimport { zoomState } from \"./types\";\nimport { IDashboardPanel } from \"./Prometheus/types\";\nimport { getUsageAsync } from \"./dashboardThunks\";\nimport { AdminInfoResponse } from \"api/consoleApi\";\n\nexport interface DashboardState {\n zoom: zoomState;\n usage: AdminInfoResponse | null;\n status: \"idle\" | \"loading\" | \"failed\";\n widgetLoadVersion: number;\n}\n\nconst initialState: DashboardState = {\n status: \"idle\",\n zoom: {\n openZoom: false,\n widgetRender: null,\n },\n usage: null,\n widgetLoadVersion: 0,\n};\nexport const dashboardSlice = createSlice({\n name: \"dashboard\",\n initialState,\n reducers: {\n openZoomPage: (state, action: PayloadAction) => {\n state.zoom.openZoom = true;\n state.zoom.widgetRender = action.payload;\n },\n closeZoomPage: (state) => {\n state.zoom.openZoom = false;\n state.zoom.widgetRender = null;\n },\n reloadWidgets: (state) => {\n state.widgetLoadVersion++;\n },\n },\n extraReducers: (builder) => {\n builder\n .addCase(getUsageAsync.pending, (state) => {\n state.status = \"loading\";\n })\n .addCase(getUsageAsync.rejected, (state) => {\n state.status = \"failed\";\n })\n .addCase(getUsageAsync.fulfilled, (state, action) => {\n state.status = \"idle\";\n state.usage = action.payload;\n });\n },\n});\nexport const { openZoomPage, closeZoomPage, reloadWidgets } =\n dashboardSlice.actions;\n\nexport default dashboardSlice.reducer;\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 { setErrorSnackMessage } from \"../../../systemSlice\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\nexport const getUsageAsync = createAsyncThunk(\n \"dashboard/getUsageAsync\",\n async (_, { getState, rejectWithValue, dispatch }) => {\n return api.admin\n .adminInfo()\n .then((res) => {\n return res.data;\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n return rejectWithValue(err);\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 { createSlice, PayloadAction } from \"@reduxjs/toolkit\";\n\nexport interface DestinationState {\n loading: boolean;\n}\n\nconst initialState: DestinationState = {\n loading: true,\n};\n\nexport const destinationSlice = createSlice({\n name: \"destination\",\n initialState,\n reducers: {\n setDestinationLoading: (state, action: PayloadAction) => {\n state.loading = action.payload;\n },\n },\n});\n\n// Action creators are generated for each case reducer function\nexport const { setDestinationLoading } = destinationSlice.actions;\n\nexport default destinationSlice.reducer;\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 { createSlice, PayloadAction } from \"@reduxjs/toolkit\";\nimport { HealthInfoMessage } from \"./types\";\n\nexport interface HealthInfoState {\n message: HealthInfoMessage;\n}\n\nconst initialState: HealthInfoState = {\n message: {} as HealthInfoMessage,\n};\n\nexport const healthInfoSlice = createSlice({\n name: \"trace\",\n initialState,\n reducers: {\n healthInfoMessageReceived: (\n state,\n action: PayloadAction,\n ) => {\n state.message = action.payload;\n },\n healthInfoResetMessage: (state) => {\n state.message = {} as HealthInfoMessage;\n },\n },\n});\n\nexport const { healthInfoMessageReceived, healthInfoResetMessage } =\n healthInfoSlice.actions;\n\nexport default healthInfoSlice.reducer;\n","/**\n * @typedef {import('unist').Node} Node\n * @typedef {import('unist').Point} Point\n * @typedef {import('unist').Position} Position\n */\n\n/**\n * @typedef NodeLike\n * @property {string} type\n * @property {PositionLike | null | undefined} [position]\n *\n * @typedef PositionLike\n * @property {PointLike | null | undefined} [start]\n * @property {PointLike | null | undefined} [end]\n *\n * @typedef PointLike\n * @property {number | null | undefined} [line]\n * @property {number | null | undefined} [column]\n * @property {number | null | undefined} [offset]\n */\n\n/**\n * Serialize the positional info of a point, position (start and end points),\n * or node.\n *\n * @param {Node | NodeLike | Position | PositionLike | Point | PointLike | null | undefined} [value]\n * Node, position, or point.\n * @returns {string}\n * Pretty printed positional info of a node (`string`).\n *\n * In the format of a range `ls:cs-le:ce` (when given `node` or `position`)\n * or a point `l:c` (when given `point`), where `l` stands for line, `c` for\n * column, `s` for `start`, and `e` for end.\n * An empty string (`''`) is returned if the given value is neither `node`,\n * `position`, nor `point`.\n */\nexport function stringifyPosition(value) {\n // Nothing.\n if (!value || typeof value !== 'object') {\n return ''\n }\n\n // Node.\n if ('position' in value || 'type' in value) {\n return position(value.position)\n }\n\n // Position.\n if ('start' in value || 'end' in value) {\n return position(value)\n }\n\n // Point.\n if ('line' in value || 'column' in value) {\n return point(value)\n }\n\n // ?\n return ''\n}\n\n/**\n * @param {Point | PointLike | null | undefined} point\n * @returns {string}\n */\nfunction point(point) {\n return index(point && point.line) + ':' + index(point && point.column)\n}\n\n/**\n * @param {Position | PositionLike | null | undefined} pos\n * @returns {string}\n */\nfunction position(pos) {\n return point(pos && pos.start) + '-' + point(pos && pos.end)\n}\n\n/**\n * @param {number | null | undefined} value\n * @returns {number}\n */\nfunction index(value) {\n return value && typeof value === 'number' ? value : 1\n}\n","/**\n * @typedef {import('unist').Node} Node\n * @typedef {import('unist').Position} Position\n * @typedef {import('unist').Point} Point\n * @typedef {object & {type: string, position?: Position | undefined}} NodeLike\n */\n\nimport {stringifyPosition} from 'unist-util-stringify-position'\n\n/**\n * Message.\n */\nexport class VFileMessage extends Error {\n /**\n * Create a message for `reason` at `place` from `origin`.\n *\n * When an error is passed in as `reason`, the `stack` is copied.\n *\n * @param {string | Error | VFileMessage} reason\n * Reason for message, uses the stack and message of the error if given.\n *\n * > 👉 **Note**: you should use markdown.\n * @param {Node | NodeLike | Position | Point | null | undefined} [place]\n * Place in file where the message occurred.\n * @param {string | null | undefined} [origin]\n * Place in code where the message originates (example:\n * `'my-package:my-rule'` or `'my-rule'`).\n * @returns\n * Instance of `VFileMessage`.\n */\n // To do: next major: expose `undefined` everywhere instead of `null`.\n constructor(reason, place, origin) {\n /** @type {[string | null, string | null]} */\n const parts = [null, null]\n /** @type {Position} */\n let position = {\n // @ts-expect-error: we always follows the structure of `position`.\n start: {line: null, column: null},\n // @ts-expect-error: \"\n end: {line: null, column: null}\n }\n\n super()\n\n if (typeof place === 'string') {\n origin = place\n place = undefined\n }\n\n if (typeof origin === 'string') {\n const index = origin.indexOf(':')\n\n if (index === -1) {\n parts[1] = origin\n } else {\n parts[0] = origin.slice(0, index)\n parts[1] = origin.slice(index + 1)\n }\n }\n\n if (place) {\n // Node.\n if ('type' in place || 'position' in place) {\n if (place.position) {\n // To do: next major: deep clone.\n // @ts-expect-error: looks like a position.\n position = place.position\n }\n }\n // Position.\n else if ('start' in place || 'end' in place) {\n // @ts-expect-error: looks like a position.\n // To do: next major: deep clone.\n position = place\n }\n // Point.\n else if ('line' in place || 'column' in place) {\n // To do: next major: deep clone.\n position.start = place\n }\n }\n\n // Fields from `Error`.\n /**\n * Serialized positional info of error.\n *\n * On normal errors, this would be something like `ParseError`, buit in\n * `VFile` messages we use this space to show where an error happened.\n */\n this.name = stringifyPosition(place) || '1:1'\n\n /**\n * Reason for message.\n *\n * @type {string}\n */\n this.message = typeof reason === 'object' ? reason.message : reason\n\n /**\n * Stack of message.\n *\n * This is used by normal errors to show where something happened in\n * programming code, irrelevant for `VFile` messages,\n *\n * @type {string}\n */\n this.stack = ''\n\n if (typeof reason === 'object' && reason.stack) {\n this.stack = reason.stack\n }\n\n /**\n * Reason for message.\n *\n * > 👉 **Note**: you should use markdown.\n *\n * @type {string}\n */\n this.reason = this.message\n\n /* eslint-disable no-unused-expressions */\n /**\n * State of problem.\n *\n * * `true` — marks associated file as no longer processable (error)\n * * `false` — necessitates a (potential) change (warning)\n * * `null | undefined` — for things that might not need changing (info)\n *\n * @type {boolean | null | undefined}\n */\n this.fatal\n\n /**\n * Starting line of error.\n *\n * @type {number | null}\n */\n this.line = position.start.line\n\n /**\n * Starting column of error.\n *\n * @type {number | null}\n */\n this.column = position.start.column\n\n /**\n * Full unist position.\n *\n * @type {Position | null}\n */\n this.position = position\n\n /**\n * Namespace of message (example: `'my-package'`).\n *\n * @type {string | null}\n */\n this.source = parts[0]\n\n /**\n * Category of message (example: `'my-rule'`).\n *\n * @type {string | null}\n */\n this.ruleId = parts[1]\n\n /**\n * Path of a file (used throughout the `VFile` ecosystem).\n *\n * @type {string | null}\n */\n this.file\n\n // The following fields are “well known”.\n // Not standard.\n // Feel free to add other non-standard fields to your messages.\n\n /**\n * Specify the source value that’s being reported, which is deemed\n * incorrect.\n *\n * @type {string | null}\n */\n this.actual\n\n /**\n * Suggest acceptable values that can be used instead of `actual`.\n *\n * @type {Array | null}\n */\n this.expected\n\n /**\n * Link to docs for the message.\n *\n * > 👉 **Note**: this must be an absolute URL that can be passed as `x`\n * > to `new URL(x)`.\n *\n * @type {string | null}\n */\n this.url\n\n /**\n * Long form description of the message (you should use markdown).\n *\n * @type {string | null}\n */\n this.note\n /* eslint-enable no-unused-expressions */\n }\n}\n\nVFileMessage.prototype.file = ''\nVFileMessage.prototype.name = ''\nVFileMessage.prototype.reason = ''\nVFileMessage.prototype.message = ''\nVFileMessage.prototype.stack = ''\nVFileMessage.prototype.fatal = null\nVFileMessage.prototype.column = null\nVFileMessage.prototype.line = null\nVFileMessage.prototype.source = null\nVFileMessage.prototype.ruleId = null\nVFileMessage.prototype.position = null\n","// A derivative work based on:\n// .\n// Which is licensed:\n//\n// MIT License\n//\n// Copyright (c) 2013 James Halliday\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy of\n// this software and associated documentation files (the \"Software\"), to deal in\n// the Software without restriction, including without limitation the rights to\n// use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\n// the Software, and to permit persons to whom the Software is furnished to do so,\n// subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in all\n// copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n// FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n// COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n// IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n// CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n// A derivative work based on:\n//\n// Parts of that are extracted from Node’s internal `path` module:\n// .\n// Which is licensed:\n//\n// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nexport const path = {basename, dirname, extname, join, sep: '/'}\n\n/* eslint-disable max-depth, complexity */\n\n/**\n * Get the basename from a path.\n *\n * @param {string} path\n * File path.\n * @param {string | undefined} [ext]\n * Extension to strip.\n * @returns {string}\n * Stem or basename.\n */\nfunction basename(path, ext) {\n if (ext !== undefined && typeof ext !== 'string') {\n throw new TypeError('\"ext\" argument must be a string')\n }\n\n assertPath(path)\n let start = 0\n let end = -1\n let index = path.length\n /** @type {boolean | undefined} */\n let seenNonSlash\n\n if (ext === undefined || ext.length === 0 || ext.length > path.length) {\n while (index--) {\n if (path.charCodeAt(index) === 47 /* `/` */) {\n // If we reached a path separator that was not part of a set of path\n // separators at the end of the string, stop now.\n if (seenNonSlash) {\n start = index + 1\n break\n }\n } else if (end < 0) {\n // We saw the first non-path separator, mark this as the end of our\n // path component.\n seenNonSlash = true\n end = index + 1\n }\n }\n\n return end < 0 ? '' : path.slice(start, end)\n }\n\n if (ext === path) {\n return ''\n }\n\n let firstNonSlashEnd = -1\n let extIndex = ext.length - 1\n\n while (index--) {\n if (path.charCodeAt(index) === 47 /* `/` */) {\n // If we reached a path separator that was not part of a set of path\n // separators at the end of the string, stop now.\n if (seenNonSlash) {\n start = index + 1\n break\n }\n } else {\n if (firstNonSlashEnd < 0) {\n // We saw the first non-path separator, remember this index in case\n // we need it if the extension ends up not matching.\n seenNonSlash = true\n firstNonSlashEnd = index + 1\n }\n\n if (extIndex > -1) {\n // Try to match the explicit extension.\n if (path.charCodeAt(index) === ext.charCodeAt(extIndex--)) {\n if (extIndex < 0) {\n // We matched the extension, so mark this as the end of our path\n // component\n end = index\n }\n } else {\n // Extension does not match, so our result is the entire path\n // component\n extIndex = -1\n end = firstNonSlashEnd\n }\n }\n }\n }\n\n if (start === end) {\n end = firstNonSlashEnd\n } else if (end < 0) {\n end = path.length\n }\n\n return path.slice(start, end)\n}\n\n/**\n * Get the dirname from a path.\n *\n * @param {string} path\n * File path.\n * @returns {string}\n * File path.\n */\nfunction dirname(path) {\n assertPath(path)\n\n if (path.length === 0) {\n return '.'\n }\n\n let end = -1\n let index = path.length\n /** @type {boolean | undefined} */\n let unmatchedSlash\n\n // Prefix `--` is important to not run on `0`.\n while (--index) {\n if (path.charCodeAt(index) === 47 /* `/` */) {\n if (unmatchedSlash) {\n end = index\n break\n }\n } else if (!unmatchedSlash) {\n // We saw the first non-path separator\n unmatchedSlash = true\n }\n }\n\n return end < 0\n ? path.charCodeAt(0) === 47 /* `/` */\n ? '/'\n : '.'\n : end === 1 && path.charCodeAt(0) === 47 /* `/` */\n ? '//'\n : path.slice(0, end)\n}\n\n/**\n * Get an extname from a path.\n *\n * @param {string} path\n * File path.\n * @returns {string}\n * Extname.\n */\nfunction extname(path) {\n assertPath(path)\n\n let index = path.length\n\n let end = -1\n let startPart = 0\n let startDot = -1\n // Track the state of characters (if any) we see before our first dot and\n // after any path separator we find.\n let preDotState = 0\n /** @type {boolean | undefined} */\n let unmatchedSlash\n\n while (index--) {\n const code = path.charCodeAt(index)\n\n if (code === 47 /* `/` */) {\n // If we reached a path separator that was not part of a set of path\n // separators at the end of the string, stop now.\n if (unmatchedSlash) {\n startPart = index + 1\n break\n }\n\n continue\n }\n\n if (end < 0) {\n // We saw the first non-path separator, mark this as the end of our\n // extension.\n unmatchedSlash = true\n end = index + 1\n }\n\n if (code === 46 /* `.` */) {\n // If this is our first dot, mark it as the start of our extension.\n if (startDot < 0) {\n startDot = index\n } else if (preDotState !== 1) {\n preDotState = 1\n }\n } else if (startDot > -1) {\n // We saw a non-dot and non-path separator before our dot, so we should\n // have a good chance at having a non-empty extension.\n preDotState = -1\n }\n }\n\n if (\n startDot < 0 ||\n end < 0 ||\n // We saw a non-dot character immediately before the dot.\n preDotState === 0 ||\n // The (right-most) trimmed path component is exactly `..`.\n (preDotState === 1 && startDot === end - 1 && startDot === startPart + 1)\n ) {\n return ''\n }\n\n return path.slice(startDot, end)\n}\n\n/**\n * Join segments from a path.\n *\n * @param {Array} segments\n * Path segments.\n * @returns {string}\n * File path.\n */\nfunction join(...segments) {\n let index = -1\n /** @type {string | undefined} */\n let joined\n\n while (++index < segments.length) {\n assertPath(segments[index])\n\n if (segments[index]) {\n joined =\n joined === undefined ? segments[index] : joined + '/' + segments[index]\n }\n }\n\n return joined === undefined ? '.' : normalize(joined)\n}\n\n/**\n * Normalize a basic file path.\n *\n * @param {string} path\n * File path.\n * @returns {string}\n * File path.\n */\n// Note: `normalize` is not exposed as `path.normalize`, so some code is\n// manually removed from it.\nfunction normalize(path) {\n assertPath(path)\n\n const absolute = path.charCodeAt(0) === 47 /* `/` */\n\n // Normalize the path according to POSIX rules.\n let value = normalizeString(path, !absolute)\n\n if (value.length === 0 && !absolute) {\n value = '.'\n }\n\n if (value.length > 0 && path.charCodeAt(path.length - 1) === 47 /* / */) {\n value += '/'\n }\n\n return absolute ? '/' + value : value\n}\n\n/**\n * Resolve `.` and `..` elements in a path with directory names.\n *\n * @param {string} path\n * File path.\n * @param {boolean} allowAboveRoot\n * Whether `..` can move above root.\n * @returns {string}\n * File path.\n */\nfunction normalizeString(path, allowAboveRoot) {\n let result = ''\n let lastSegmentLength = 0\n let lastSlash = -1\n let dots = 0\n let index = -1\n /** @type {number | undefined} */\n let code\n /** @type {number} */\n let lastSlashIndex\n\n while (++index <= path.length) {\n if (index < path.length) {\n code = path.charCodeAt(index)\n } else if (code === 47 /* `/` */) {\n break\n } else {\n code = 47 /* `/` */\n }\n\n if (code === 47 /* `/` */) {\n if (lastSlash === index - 1 || dots === 1) {\n // Empty.\n } else if (lastSlash !== index - 1 && dots === 2) {\n if (\n result.length < 2 ||\n lastSegmentLength !== 2 ||\n result.charCodeAt(result.length - 1) !== 46 /* `.` */ ||\n result.charCodeAt(result.length - 2) !== 46 /* `.` */\n ) {\n if (result.length > 2) {\n lastSlashIndex = result.lastIndexOf('/')\n\n if (lastSlashIndex !== result.length - 1) {\n if (lastSlashIndex < 0) {\n result = ''\n lastSegmentLength = 0\n } else {\n result = result.slice(0, lastSlashIndex)\n lastSegmentLength = result.length - 1 - result.lastIndexOf('/')\n }\n\n lastSlash = index\n dots = 0\n continue\n }\n } else if (result.length > 0) {\n result = ''\n lastSegmentLength = 0\n lastSlash = index\n dots = 0\n continue\n }\n }\n\n if (allowAboveRoot) {\n result = result.length > 0 ? result + '/..' : '..'\n lastSegmentLength = 2\n }\n } else {\n if (result.length > 0) {\n result += '/' + path.slice(lastSlash + 1, index)\n } else {\n result = path.slice(lastSlash + 1, index)\n }\n\n lastSegmentLength = index - lastSlash - 1\n }\n\n lastSlash = index\n dots = 0\n } else if (code === 46 /* `.` */ && dots > -1) {\n dots++\n } else {\n dots = -1\n }\n }\n\n return result\n}\n\n/**\n * Make sure `path` is a string.\n *\n * @param {string} path\n * File path.\n * @returns {asserts path is string}\n * Nothing.\n */\nfunction assertPath(path) {\n if (typeof path !== 'string') {\n throw new TypeError(\n 'Path must be a string. Received ' + JSON.stringify(path)\n )\n }\n}\n\n/* eslint-enable max-depth, complexity */\n","// Somewhat based on:\n// .\n// But I don’t think one tiny line of code can be copyrighted. 😅\nexport const proc = {cwd}\n\nfunction cwd() {\n return '/'\n}\n","/**\n * @typedef URL\n * @property {string} hash\n * @property {string} host\n * @property {string} hostname\n * @property {string} href\n * @property {string} origin\n * @property {string} password\n * @property {string} pathname\n * @property {string} port\n * @property {string} protocol\n * @property {string} search\n * @property {any} searchParams\n * @property {string} username\n * @property {() => string} toString\n * @property {() => string} toJSON\n */\n\n/**\n * Check if `fileUrlOrPath` looks like a URL.\n *\n * @param {unknown} fileUrlOrPath\n * File path or URL.\n * @returns {fileUrlOrPath is URL}\n * Whether it’s a URL.\n */\n// From: \nexport function isUrl(fileUrlOrPath) {\n return (\n fileUrlOrPath !== null &&\n typeof fileUrlOrPath === 'object' &&\n // @ts-expect-error: indexable.\n fileUrlOrPath.href &&\n // @ts-expect-error: indexable.\n fileUrlOrPath.origin\n )\n}\n","/// \n\nimport {isUrl} from './minurl.shared.js'\n\n// See: \n\n/**\n * @param {string | URL} path\n * File URL.\n * @returns {string}\n * File URL.\n */\nexport function urlToPath(path) {\n if (typeof path === 'string') {\n path = new URL(path)\n } else if (!isUrl(path)) {\n /** @type {NodeJS.ErrnoException} */\n const error = new TypeError(\n 'The \"path\" argument must be of type string or an instance of URL. Received `' +\n path +\n '`'\n )\n error.code = 'ERR_INVALID_ARG_TYPE'\n throw error\n }\n\n if (path.protocol !== 'file:') {\n /** @type {NodeJS.ErrnoException} */\n const error = new TypeError('The URL must be of scheme file')\n error.code = 'ERR_INVALID_URL_SCHEME'\n throw error\n }\n\n return getPathFromURLPosix(path)\n}\n\n/**\n * Get a path from a POSIX URL.\n *\n * @param {URL} url\n * URL.\n * @returns {string}\n * File path.\n */\nfunction getPathFromURLPosix(url) {\n if (url.hostname !== '') {\n /** @type {NodeJS.ErrnoException} */\n const error = new TypeError(\n 'File URL host must be \"localhost\" or empty on darwin'\n )\n error.code = 'ERR_INVALID_FILE_URL_HOST'\n throw error\n }\n\n const pathname = url.pathname\n let index = -1\n\n while (++index < pathname.length) {\n if (\n pathname.charCodeAt(index) === 37 /* `%` */ &&\n pathname.charCodeAt(index + 1) === 50 /* `2` */\n ) {\n const third = pathname.charCodeAt(index + 2)\n if (third === 70 /* `F` */ || third === 102 /* `f` */) {\n /** @type {NodeJS.ErrnoException} */\n const error = new TypeError(\n 'File URL path must not include encoded / characters'\n )\n error.code = 'ERR_INVALID_FILE_URL_PATH'\n throw error\n }\n }\n }\n\n return decodeURIComponent(pathname)\n}\n\nexport {isUrl} from './minurl.shared.js'\n","/**\n * @typedef {import('unist').Node} Node\n * @typedef {import('unist').Position} Position\n * @typedef {import('unist').Point} Point\n * @typedef {import('./minurl.shared.js').URL} URL\n * @typedef {import('../index.js').Data} Data\n * @typedef {import('../index.js').Value} Value\n */\n\n/**\n * @typedef {Record & {type: string, position?: Position | undefined}} NodeLike\n *\n * @typedef {'ascii' | 'utf8' | 'utf-8' | 'utf16le' | 'ucs2' | 'ucs-2' | 'base64' | 'base64url' | 'latin1' | 'binary' | 'hex'} BufferEncoding\n * Encodings supported by the buffer class.\n *\n * This is a copy of the types from Node, copied to prevent Node globals from\n * being needed.\n * Copied from: \n *\n * @typedef {Options | URL | Value | VFile} Compatible\n * Things that can be passed to the constructor.\n *\n * @typedef VFileCoreOptions\n * Set multiple values.\n * @property {Value | null | undefined} [value]\n * Set `value`.\n * @property {string | null | undefined} [cwd]\n * Set `cwd`.\n * @property {Array | null | undefined} [history]\n * Set `history`.\n * @property {URL | string | null | undefined} [path]\n * Set `path`.\n * @property {string | null | undefined} [basename]\n * Set `basename`.\n * @property {string | null | undefined} [stem]\n * Set `stem`.\n * @property {string | null | undefined} [extname]\n * Set `extname`.\n * @property {string | null | undefined} [dirname]\n * Set `dirname`.\n * @property {Data | null | undefined} [data]\n * Set `data`.\n *\n * @typedef Map\n * Raw source map.\n *\n * See:\n * .\n * @property {number} version\n * Which version of the source map spec this map is following.\n * @property {Array} sources\n * An array of URLs to the original source files.\n * @property {Array} names\n * An array of identifiers which can be referenced by individual mappings.\n * @property {string | undefined} [sourceRoot]\n * The URL root from which all sources are relative.\n * @property {Array | undefined} [sourcesContent]\n * An array of contents of the original source files.\n * @property {string} mappings\n * A string of base64 VLQs which contain the actual mappings.\n * @property {string} file\n * The generated file this source map is associated with.\n *\n * @typedef {{[key: string]: unknown} & VFileCoreOptions} Options\n * Configuration.\n *\n * A bunch of keys that will be shallow copied over to the new file.\n *\n * @typedef {Record} ReporterSettings\n * Configuration for reporters.\n */\n\n/**\n * @template {ReporterSettings} Settings\n * Options type.\n * @callback Reporter\n * Type for a reporter.\n * @param {Array} files\n * Files to report.\n * @param {Settings} options\n * Configuration.\n * @returns {string}\n * Report.\n */\n\nimport bufferLike from 'is-buffer'\nimport {VFileMessage} from 'vfile-message'\nimport {path} from './minpath.js'\nimport {proc} from './minproc.js'\nimport {urlToPath, isUrl} from './minurl.js'\n\n/**\n * Order of setting (least specific to most), we need this because otherwise\n * `{stem: 'a', path: '~/b.js'}` would throw, as a path is needed before a\n * stem can be set.\n *\n * @type {Array<'basename' | 'dirname' | 'extname' | 'history' | 'path' | 'stem'>}\n */\nconst order = ['history', 'path', 'basename', 'stem', 'extname', 'dirname']\n\nexport class VFile {\n /**\n * Create a new virtual file.\n *\n * `options` is treated as:\n *\n * * `string` or `Buffer` — `{value: options}`\n * * `URL` — `{path: options}`\n * * `VFile` — shallow copies its data over to the new file\n * * `object` — all fields are shallow copied over to the new file\n *\n * Path related fields are set in the following order (least specific to\n * most specific): `history`, `path`, `basename`, `stem`, `extname`,\n * `dirname`.\n *\n * You cannot set `dirname` or `extname` without setting either `history`,\n * `path`, `basename`, or `stem` too.\n *\n * @param {Compatible | null | undefined} [value]\n * File value.\n * @returns\n * New instance.\n */\n constructor(value) {\n /** @type {Options | VFile} */\n let options\n\n if (!value) {\n options = {}\n } else if (typeof value === 'string' || buffer(value)) {\n options = {value}\n } else if (isUrl(value)) {\n options = {path: value}\n } else {\n options = value\n }\n\n /**\n * Place to store custom information (default: `{}`).\n *\n * It’s OK to store custom data directly on the file but moving it to\n * `data` is recommended.\n *\n * @type {Data}\n */\n this.data = {}\n\n /**\n * List of messages associated with the file.\n *\n * @type {Array}\n */\n this.messages = []\n\n /**\n * List of filepaths the file moved between.\n *\n * The first is the original path and the last is the current path.\n *\n * @type {Array}\n */\n this.history = []\n\n /**\n * Base of `path` (default: `process.cwd()` or `'/'` in browsers).\n *\n * @type {string}\n */\n this.cwd = proc.cwd()\n\n /* eslint-disable no-unused-expressions */\n /**\n * Raw value.\n *\n * @type {Value}\n */\n this.value\n\n // The below are non-standard, they are “well-known”.\n // As in, used in several tools.\n\n /**\n * Whether a file was saved to disk.\n *\n * This is used by vfile reporters.\n *\n * @type {boolean}\n */\n this.stored\n\n /**\n * Custom, non-string, compiled, representation.\n *\n * This is used by unified to store non-string results.\n * One example is when turning markdown into React nodes.\n *\n * @type {unknown}\n */\n this.result\n\n /**\n * Source map.\n *\n * This type is equivalent to the `RawSourceMap` type from the `source-map`\n * module.\n *\n * @type {Map | null | undefined}\n */\n this.map\n /* eslint-enable no-unused-expressions */\n\n // Set path related properties in the correct order.\n let index = -1\n\n while (++index < order.length) {\n const prop = order[index]\n\n // Note: we specifically use `in` instead of `hasOwnProperty` to accept\n // `vfile`s too.\n if (\n prop in options &&\n options[prop] !== undefined &&\n options[prop] !== null\n ) {\n // @ts-expect-error: TS doesn’t understand basic reality.\n this[prop] = prop === 'history' ? [...options[prop]] : options[prop]\n }\n }\n\n /** @type {string} */\n let prop\n\n // Set non-path related properties.\n for (prop in options) {\n // @ts-expect-error: fine to set other things.\n if (!order.includes(prop)) {\n // @ts-expect-error: fine to set other things.\n this[prop] = options[prop]\n }\n }\n }\n\n /**\n * Get the full path (example: `'~/index.min.js'`).\n *\n * @returns {string}\n */\n get path() {\n return this.history[this.history.length - 1]\n }\n\n /**\n * Set the full path (example: `'~/index.min.js'`).\n *\n * Cannot be nullified.\n * You can set a file URL (a `URL` object with a `file:` protocol) which will\n * be turned into a path with `url.fileURLToPath`.\n *\n * @param {string | URL} path\n */\n set path(path) {\n if (isUrl(path)) {\n path = urlToPath(path)\n }\n\n assertNonEmpty(path, 'path')\n\n if (this.path !== path) {\n this.history.push(path)\n }\n }\n\n /**\n * Get the parent path (example: `'~'`).\n */\n get dirname() {\n return typeof this.path === 'string' ? path.dirname(this.path) : undefined\n }\n\n /**\n * Set the parent path (example: `'~'`).\n *\n * Cannot be set if there’s no `path` yet.\n */\n set dirname(dirname) {\n assertPath(this.basename, 'dirname')\n this.path = path.join(dirname || '', this.basename)\n }\n\n /**\n * Get the basename (including extname) (example: `'index.min.js'`).\n */\n get basename() {\n return typeof this.path === 'string' ? path.basename(this.path) : undefined\n }\n\n /**\n * Set basename (including extname) (`'index.min.js'`).\n *\n * Cannot contain path separators (`'/'` on unix, macOS, and browsers, `'\\'`\n * on windows).\n * Cannot be nullified (use `file.path = file.dirname` instead).\n */\n set basename(basename) {\n assertNonEmpty(basename, 'basename')\n assertPart(basename, 'basename')\n this.path = path.join(this.dirname || '', basename)\n }\n\n /**\n * Get the extname (including dot) (example: `'.js'`).\n */\n get extname() {\n return typeof this.path === 'string' ? path.extname(this.path) : undefined\n }\n\n /**\n * Set the extname (including dot) (example: `'.js'`).\n *\n * Cannot contain path separators (`'/'` on unix, macOS, and browsers, `'\\'`\n * on windows).\n * Cannot be set if there’s no `path` yet.\n */\n set extname(extname) {\n assertPart(extname, 'extname')\n assertPath(this.dirname, 'extname')\n\n if (extname) {\n if (extname.charCodeAt(0) !== 46 /* `.` */) {\n throw new Error('`extname` must start with `.`')\n }\n\n if (extname.includes('.', 1)) {\n throw new Error('`extname` cannot contain multiple dots')\n }\n }\n\n this.path = path.join(this.dirname, this.stem + (extname || ''))\n }\n\n /**\n * Get the stem (basename w/o extname) (example: `'index.min'`).\n */\n get stem() {\n return typeof this.path === 'string'\n ? path.basename(this.path, this.extname)\n : undefined\n }\n\n /**\n * Set the stem (basename w/o extname) (example: `'index.min'`).\n *\n * Cannot contain path separators (`'/'` on unix, macOS, and browsers, `'\\'`\n * on windows).\n * Cannot be nullified (use `file.path = file.dirname` instead).\n */\n set stem(stem) {\n assertNonEmpty(stem, 'stem')\n assertPart(stem, 'stem')\n this.path = path.join(this.dirname || '', stem + (this.extname || ''))\n }\n\n /**\n * Serialize the file.\n *\n * @param {BufferEncoding | null | undefined} [encoding='utf8']\n * Character encoding to understand `value` as when it’s a `Buffer`\n * (default: `'utf8'`).\n * @returns {string}\n * Serialized file.\n */\n toString(encoding) {\n return (this.value || '').toString(encoding || undefined)\n }\n\n /**\n * Create a warning message associated with the file.\n *\n * Its `fatal` is set to `false` and `file` is set to the current file path.\n * Its added to `file.messages`.\n *\n * @param {string | Error | VFileMessage} reason\n * Reason for message, uses the stack and message of the error if given.\n * @param {Node | NodeLike | Position | Point | null | undefined} [place]\n * Place in file where the message occurred.\n * @param {string | null | undefined} [origin]\n * Place in code where the message originates (example:\n * `'my-package:my-rule'` or `'my-rule'`).\n * @returns {VFileMessage}\n * Message.\n */\n message(reason, place, origin) {\n const message = new VFileMessage(reason, place, origin)\n\n if (this.path) {\n message.name = this.path + ':' + message.name\n message.file = this.path\n }\n\n message.fatal = false\n\n this.messages.push(message)\n\n return message\n }\n\n /**\n * Create an info message associated with the file.\n *\n * Its `fatal` is set to `null` and `file` is set to the current file path.\n * Its added to `file.messages`.\n *\n * @param {string | Error | VFileMessage} reason\n * Reason for message, uses the stack and message of the error if given.\n * @param {Node | NodeLike | Position | Point | null | undefined} [place]\n * Place in file where the message occurred.\n * @param {string | null | undefined} [origin]\n * Place in code where the message originates (example:\n * `'my-package:my-rule'` or `'my-rule'`).\n * @returns {VFileMessage}\n * Message.\n */\n info(reason, place, origin) {\n const message = this.message(reason, place, origin)\n\n message.fatal = null\n\n return message\n }\n\n /**\n * Create a fatal error associated with the file.\n *\n * Its `fatal` is set to `true` and `file` is set to the current file path.\n * Its added to `file.messages`.\n *\n * > 👉 **Note**: a fatal error means that a file is no longer processable.\n *\n * @param {string | Error | VFileMessage} reason\n * Reason for message, uses the stack and message of the error if given.\n * @param {Node | NodeLike | Position | Point | null | undefined} [place]\n * Place in file where the message occurred.\n * @param {string | null | undefined} [origin]\n * Place in code where the message originates (example:\n * `'my-package:my-rule'` or `'my-rule'`).\n * @returns {never}\n * Message.\n * @throws {VFileMessage}\n * Message.\n */\n fail(reason, place, origin) {\n const message = this.message(reason, place, origin)\n\n message.fatal = true\n\n throw message\n }\n}\n\n/**\n * Assert that `part` is not a path (as in, does not contain `path.sep`).\n *\n * @param {string | null | undefined} part\n * File path part.\n * @param {string} name\n * Part name.\n * @returns {void}\n * Nothing.\n */\nfunction assertPart(part, name) {\n if (part && part.includes(path.sep)) {\n throw new Error(\n '`' + name + '` cannot be a path: did not expect `' + path.sep + '`'\n )\n }\n}\n\n/**\n * Assert that `part` is not empty.\n *\n * @param {string | undefined} part\n * Thing.\n * @param {string} name\n * Part name.\n * @returns {asserts part is string}\n * Nothing.\n */\nfunction assertNonEmpty(part, name) {\n if (!part) {\n throw new Error('`' + name + '` cannot be empty')\n }\n}\n\n/**\n * Assert `path` exists.\n *\n * @param {string | undefined} path\n * Path.\n * @param {string} name\n * Dependency name.\n * @returns {asserts path is string}\n * Nothing.\n */\nfunction assertPath(path, name) {\n if (!path) {\n throw new Error('Setting `' + name + '` requires `path` to be set too')\n }\n}\n\n/**\n * Assert `value` is a buffer.\n *\n * @param {unknown} value\n * thing.\n * @returns {value is Buffer}\n * Whether `value` is a Node.js buffer.\n */\nfunction buffer(value) {\n return bufferLike(value)\n}\n","/**\n * Throw a given error.\n *\n * @param {Error|null|undefined} [error]\n * Maybe error.\n * @returns {asserts error is null|undefined}\n */\nexport function bail(error) {\n if (error) {\n throw error\n }\n}\n","export default function isPlainObject(value) {\n\tif (typeof value !== 'object' || value === null) {\n\t\treturn false;\n\t}\n\n\tconst prototype = Object.getPrototypeOf(value);\n\treturn (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in value) && !(Symbol.iterator in value);\n}\n","// To do: remove `void`s\n// To do: remove `null` from output of our APIs, allow it as user APIs.\n\n/**\n * @typedef {(error?: Error | null | undefined, ...output: Array) => void} Callback\n * Callback.\n *\n * @typedef {(...input: Array) => any} Middleware\n * Ware.\n *\n * @typedef Pipeline\n * Pipeline.\n * @property {Run} run\n * Run the pipeline.\n * @property {Use} use\n * Add middleware.\n *\n * @typedef {(...input: Array) => void} Run\n * Call all middleware.\n *\n * Calls `done` on completion with either an error or the output of the\n * last middleware.\n *\n * > 👉 **Note**: as the length of input defines whether async functions get a\n * > `next` function,\n * > it’s recommended to keep `input` at one value normally.\n\n *\n * @typedef {(fn: Middleware) => Pipeline} Use\n * Add middleware.\n */\n\n/**\n * Create new middleware.\n *\n * @returns {Pipeline}\n * Pipeline.\n */\nexport function trough() {\n /** @type {Array} */\n const fns = []\n /** @type {Pipeline} */\n const pipeline = {run, use}\n\n return pipeline\n\n /** @type {Run} */\n function run(...values) {\n let middlewareIndex = -1\n /** @type {Callback} */\n const callback = values.pop()\n\n if (typeof callback !== 'function') {\n throw new TypeError('Expected function as last argument, not ' + callback)\n }\n\n next(null, ...values)\n\n /**\n * Run the next `fn`, or we’re done.\n *\n * @param {Error | null | undefined} error\n * @param {Array} output\n */\n function next(error, ...output) {\n const fn = fns[++middlewareIndex]\n let index = -1\n\n if (error) {\n callback(error)\n return\n }\n\n // Copy non-nullish input into values.\n while (++index < values.length) {\n if (output[index] === null || output[index] === undefined) {\n output[index] = values[index]\n }\n }\n\n // Save the newly created `output` for the next call.\n values = output\n\n // Next or done.\n if (fn) {\n wrap(fn, next)(...output)\n } else {\n callback(null, ...output)\n }\n }\n }\n\n /** @type {Use} */\n function use(middelware) {\n if (typeof middelware !== 'function') {\n throw new TypeError(\n 'Expected `middelware` to be a function, not ' + middelware\n )\n }\n\n fns.push(middelware)\n return pipeline\n }\n}\n\n/**\n * Wrap `middleware` into a uniform interface.\n *\n * You can pass all input to the resulting function.\n * `callback` is then called with the output of `middleware`.\n *\n * If `middleware` accepts more arguments than the later given in input,\n * an extra `done` function is passed to it after that input,\n * which must be called by `middleware`.\n *\n * The first value in `input` is the main input value.\n * All other input values are the rest input values.\n * The values given to `callback` are the input values,\n * merged with every non-nullish output value.\n *\n * * if `middleware` throws an error,\n * returns a promise that is rejected,\n * or calls the given `done` function with an error,\n * `callback` is called with that error\n * * if `middleware` returns a value or returns a promise that is resolved,\n * that value is the main output value\n * * if `middleware` calls `done`,\n * all non-nullish values except for the first one (the error) overwrite the\n * output values\n *\n * @param {Middleware} middleware\n * Function to wrap.\n * @param {Callback} callback\n * Callback called with the output of `middleware`.\n * @returns {Run}\n * Wrapped middleware.\n */\nexport function wrap(middleware, callback) {\n /** @type {boolean} */\n let called\n\n return wrapped\n\n /**\n * Call `middleware`.\n * @this {any}\n * @param {Array} parameters\n * @returns {void}\n */\n function wrapped(...parameters) {\n const fnExpectsCallback = middleware.length > parameters.length\n /** @type {any} */\n let result\n\n if (fnExpectsCallback) {\n parameters.push(done)\n }\n\n try {\n result = middleware.apply(this, parameters)\n } catch (error) {\n const exception = /** @type {Error} */ (error)\n\n // Well, this is quite the pickle.\n // `middleware` received a callback and called it synchronously, but that\n // threw an error.\n // The only thing left to do is to throw the thing instead.\n if (fnExpectsCallback && called) {\n throw exception\n }\n\n return done(exception)\n }\n\n if (!fnExpectsCallback) {\n if (result && result.then && typeof result.then === 'function') {\n result.then(then, done)\n } else if (result instanceof Error) {\n done(result)\n } else {\n then(result)\n }\n }\n }\n\n /**\n * Call `callback`, only once.\n *\n * @type {Callback}\n */\n function done(error, ...output) {\n if (!called) {\n called = true\n callback(error, ...output)\n }\n }\n\n /**\n * Call `done` with one value.\n *\n * @param {any} [value]\n */\n function then(value) {\n done(null, value)\n }\n}\n","/**\n * @typedef {import('unist').Node} Node\n * @typedef {import('unist').Position} Position\n * @typedef {import('unist').Point} Point\n * @typedef {object & {type: string, position?: Position | undefined}} NodeLike\n */\n\nimport {stringifyPosition} from 'unist-util-stringify-position'\n\n/**\n * Message.\n */\nexport class VFileMessage extends Error {\n /**\n * Create a message for `reason` at `place` from `origin`.\n *\n * When an error is passed in as `reason`, the `stack` is copied.\n *\n * @param {string | Error | VFileMessage} reason\n * Reason for message, uses the stack and message of the error if given.\n *\n * > 👉 **Note**: you should use markdown.\n * @param {Node | NodeLike | Position | Point | null | undefined} [place]\n * Place in file where the message occurred.\n * @param {string | null | undefined} [origin]\n * Place in code where the message originates (example:\n * `'my-package:my-rule'` or `'my-rule'`).\n * @returns\n * Instance of `VFileMessage`.\n */\n // To do: next major: expose `undefined` everywhere instead of `null`.\n constructor(reason, place, origin) {\n /** @type {[string | null, string | null]} */\n const parts = [null, null]\n /** @type {Position} */\n let position = {\n // @ts-expect-error: we always follows the structure of `position`.\n start: {line: null, column: null},\n // @ts-expect-error: \"\n end: {line: null, column: null}\n }\n\n super()\n\n if (typeof place === 'string') {\n origin = place\n place = undefined\n }\n\n if (typeof origin === 'string') {\n const index = origin.indexOf(':')\n\n if (index === -1) {\n parts[1] = origin\n } else {\n parts[0] = origin.slice(0, index)\n parts[1] = origin.slice(index + 1)\n }\n }\n\n if (place) {\n // Node.\n if ('type' in place || 'position' in place) {\n if (place.position) {\n // To do: next major: deep clone.\n // @ts-expect-error: looks like a position.\n position = place.position\n }\n }\n // Position.\n else if ('start' in place || 'end' in place) {\n // @ts-expect-error: looks like a position.\n // To do: next major: deep clone.\n position = place\n }\n // Point.\n else if ('line' in place || 'column' in place) {\n // To do: next major: deep clone.\n position.start = place\n }\n }\n\n // Fields from `Error`.\n /**\n * Serialized positional info of error.\n *\n * On normal errors, this would be something like `ParseError`, buit in\n * `VFile` messages we use this space to show where an error happened.\n */\n this.name = stringifyPosition(place) || '1:1'\n\n /**\n * Reason for message.\n *\n * @type {string}\n */\n this.message = typeof reason === 'object' ? reason.message : reason\n\n /**\n * Stack of message.\n *\n * This is used by normal errors to show where something happened in\n * programming code, irrelevant for `VFile` messages,\n *\n * @type {string}\n */\n this.stack = ''\n\n if (typeof reason === 'object' && reason.stack) {\n this.stack = reason.stack\n }\n\n /**\n * Reason for message.\n *\n * > 👉 **Note**: you should use markdown.\n *\n * @type {string}\n */\n this.reason = this.message\n\n /* eslint-disable no-unused-expressions */\n /**\n * State of problem.\n *\n * * `true` — marks associated file as no longer processable (error)\n * * `false` — necessitates a (potential) change (warning)\n * * `null | undefined` — for things that might not need changing (info)\n *\n * @type {boolean | null | undefined}\n */\n this.fatal\n\n /**\n * Starting line of error.\n *\n * @type {number | null}\n */\n this.line = position.start.line\n\n /**\n * Starting column of error.\n *\n * @type {number | null}\n */\n this.column = position.start.column\n\n /**\n * Full unist position.\n *\n * @type {Position | null}\n */\n this.position = position\n\n /**\n * Namespace of message (example: `'my-package'`).\n *\n * @type {string | null}\n */\n this.source = parts[0]\n\n /**\n * Category of message (example: `'my-rule'`).\n *\n * @type {string | null}\n */\n this.ruleId = parts[1]\n\n /**\n * Path of a file (used throughout the `VFile` ecosystem).\n *\n * @type {string | null}\n */\n this.file\n\n // The following fields are “well known”.\n // Not standard.\n // Feel free to add other non-standard fields to your messages.\n\n /**\n * Specify the source value that’s being reported, which is deemed\n * incorrect.\n *\n * @type {string | null}\n */\n this.actual\n\n /**\n * Suggest acceptable values that can be used instead of `actual`.\n *\n * @type {Array | null}\n */\n this.expected\n\n /**\n * Link to docs for the message.\n *\n * > 👉 **Note**: this must be an absolute URL that can be passed as `x`\n * > to `new URL(x)`.\n *\n * @type {string | null}\n */\n this.url\n\n /**\n * Long form description of the message (you should use markdown).\n *\n * @type {string | null}\n */\n this.note\n /* eslint-enable no-unused-expressions */\n }\n}\n\nVFileMessage.prototype.file = ''\nVFileMessage.prototype.name = ''\nVFileMessage.prototype.reason = ''\nVFileMessage.prototype.message = ''\nVFileMessage.prototype.stack = ''\nVFileMessage.prototype.fatal = null\nVFileMessage.prototype.column = null\nVFileMessage.prototype.line = null\nVFileMessage.prototype.source = null\nVFileMessage.prototype.ruleId = null\nVFileMessage.prototype.position = null\n","// A derivative work based on:\n// .\n// Which is licensed:\n//\n// MIT License\n//\n// Copyright (c) 2013 James Halliday\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy of\n// this software and associated documentation files (the \"Software\"), to deal in\n// the Software without restriction, including without limitation the rights to\n// use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\n// the Software, and to permit persons to whom the Software is furnished to do so,\n// subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in all\n// copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n// FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n// COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n// IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n// CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n// A derivative work based on:\n//\n// Parts of that are extracted from Node’s internal `path` module:\n// .\n// Which is licensed:\n//\n// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nexport const path = {basename, dirname, extname, join, sep: '/'}\n\n/* eslint-disable max-depth, complexity */\n\n/**\n * Get the basename from a path.\n *\n * @param {string} path\n * File path.\n * @param {string | undefined} [ext]\n * Extension to strip.\n * @returns {string}\n * Stem or basename.\n */\nfunction basename(path, ext) {\n if (ext !== undefined && typeof ext !== 'string') {\n throw new TypeError('\"ext\" argument must be a string')\n }\n\n assertPath(path)\n let start = 0\n let end = -1\n let index = path.length\n /** @type {boolean | undefined} */\n let seenNonSlash\n\n if (ext === undefined || ext.length === 0 || ext.length > path.length) {\n while (index--) {\n if (path.charCodeAt(index) === 47 /* `/` */) {\n // If we reached a path separator that was not part of a set of path\n // separators at the end of the string, stop now.\n if (seenNonSlash) {\n start = index + 1\n break\n }\n } else if (end < 0) {\n // We saw the first non-path separator, mark this as the end of our\n // path component.\n seenNonSlash = true\n end = index + 1\n }\n }\n\n return end < 0 ? '' : path.slice(start, end)\n }\n\n if (ext === path) {\n return ''\n }\n\n let firstNonSlashEnd = -1\n let extIndex = ext.length - 1\n\n while (index--) {\n if (path.charCodeAt(index) === 47 /* `/` */) {\n // If we reached a path separator that was not part of a set of path\n // separators at the end of the string, stop now.\n if (seenNonSlash) {\n start = index + 1\n break\n }\n } else {\n if (firstNonSlashEnd < 0) {\n // We saw the first non-path separator, remember this index in case\n // we need it if the extension ends up not matching.\n seenNonSlash = true\n firstNonSlashEnd = index + 1\n }\n\n if (extIndex > -1) {\n // Try to match the explicit extension.\n if (path.charCodeAt(index) === ext.charCodeAt(extIndex--)) {\n if (extIndex < 0) {\n // We matched the extension, so mark this as the end of our path\n // component\n end = index\n }\n } else {\n // Extension does not match, so our result is the entire path\n // component\n extIndex = -1\n end = firstNonSlashEnd\n }\n }\n }\n }\n\n if (start === end) {\n end = firstNonSlashEnd\n } else if (end < 0) {\n end = path.length\n }\n\n return path.slice(start, end)\n}\n\n/**\n * Get the dirname from a path.\n *\n * @param {string} path\n * File path.\n * @returns {string}\n * File path.\n */\nfunction dirname(path) {\n assertPath(path)\n\n if (path.length === 0) {\n return '.'\n }\n\n let end = -1\n let index = path.length\n /** @type {boolean | undefined} */\n let unmatchedSlash\n\n // Prefix `--` is important to not run on `0`.\n while (--index) {\n if (path.charCodeAt(index) === 47 /* `/` */) {\n if (unmatchedSlash) {\n end = index\n break\n }\n } else if (!unmatchedSlash) {\n // We saw the first non-path separator\n unmatchedSlash = true\n }\n }\n\n return end < 0\n ? path.charCodeAt(0) === 47 /* `/` */\n ? '/'\n : '.'\n : end === 1 && path.charCodeAt(0) === 47 /* `/` */\n ? '//'\n : path.slice(0, end)\n}\n\n/**\n * Get an extname from a path.\n *\n * @param {string} path\n * File path.\n * @returns {string}\n * Extname.\n */\nfunction extname(path) {\n assertPath(path)\n\n let index = path.length\n\n let end = -1\n let startPart = 0\n let startDot = -1\n // Track the state of characters (if any) we see before our first dot and\n // after any path separator we find.\n let preDotState = 0\n /** @type {boolean | undefined} */\n let unmatchedSlash\n\n while (index--) {\n const code = path.charCodeAt(index)\n\n if (code === 47 /* `/` */) {\n // If we reached a path separator that was not part of a set of path\n // separators at the end of the string, stop now.\n if (unmatchedSlash) {\n startPart = index + 1\n break\n }\n\n continue\n }\n\n if (end < 0) {\n // We saw the first non-path separator, mark this as the end of our\n // extension.\n unmatchedSlash = true\n end = index + 1\n }\n\n if (code === 46 /* `.` */) {\n // If this is our first dot, mark it as the start of our extension.\n if (startDot < 0) {\n startDot = index\n } else if (preDotState !== 1) {\n preDotState = 1\n }\n } else if (startDot > -1) {\n // We saw a non-dot and non-path separator before our dot, so we should\n // have a good chance at having a non-empty extension.\n preDotState = -1\n }\n }\n\n if (\n startDot < 0 ||\n end < 0 ||\n // We saw a non-dot character immediately before the dot.\n preDotState === 0 ||\n // The (right-most) trimmed path component is exactly `..`.\n (preDotState === 1 && startDot === end - 1 && startDot === startPart + 1)\n ) {\n return ''\n }\n\n return path.slice(startDot, end)\n}\n\n/**\n * Join segments from a path.\n *\n * @param {Array} segments\n * Path segments.\n * @returns {string}\n * File path.\n */\nfunction join(...segments) {\n let index = -1\n /** @type {string | undefined} */\n let joined\n\n while (++index < segments.length) {\n assertPath(segments[index])\n\n if (segments[index]) {\n joined =\n joined === undefined ? segments[index] : joined + '/' + segments[index]\n }\n }\n\n return joined === undefined ? '.' : normalize(joined)\n}\n\n/**\n * Normalize a basic file path.\n *\n * @param {string} path\n * File path.\n * @returns {string}\n * File path.\n */\n// Note: `normalize` is not exposed as `path.normalize`, so some code is\n// manually removed from it.\nfunction normalize(path) {\n assertPath(path)\n\n const absolute = path.charCodeAt(0) === 47 /* `/` */\n\n // Normalize the path according to POSIX rules.\n let value = normalizeString(path, !absolute)\n\n if (value.length === 0 && !absolute) {\n value = '.'\n }\n\n if (value.length > 0 && path.charCodeAt(path.length - 1) === 47 /* / */) {\n value += '/'\n }\n\n return absolute ? '/' + value : value\n}\n\n/**\n * Resolve `.` and `..` elements in a path with directory names.\n *\n * @param {string} path\n * File path.\n * @param {boolean} allowAboveRoot\n * Whether `..` can move above root.\n * @returns {string}\n * File path.\n */\nfunction normalizeString(path, allowAboveRoot) {\n let result = ''\n let lastSegmentLength = 0\n let lastSlash = -1\n let dots = 0\n let index = -1\n /** @type {number | undefined} */\n let code\n /** @type {number} */\n let lastSlashIndex\n\n while (++index <= path.length) {\n if (index < path.length) {\n code = path.charCodeAt(index)\n } else if (code === 47 /* `/` */) {\n break\n } else {\n code = 47 /* `/` */\n }\n\n if (code === 47 /* `/` */) {\n if (lastSlash === index - 1 || dots === 1) {\n // Empty.\n } else if (lastSlash !== index - 1 && dots === 2) {\n if (\n result.length < 2 ||\n lastSegmentLength !== 2 ||\n result.charCodeAt(result.length - 1) !== 46 /* `.` */ ||\n result.charCodeAt(result.length - 2) !== 46 /* `.` */\n ) {\n if (result.length > 2) {\n lastSlashIndex = result.lastIndexOf('/')\n\n if (lastSlashIndex !== result.length - 1) {\n if (lastSlashIndex < 0) {\n result = ''\n lastSegmentLength = 0\n } else {\n result = result.slice(0, lastSlashIndex)\n lastSegmentLength = result.length - 1 - result.lastIndexOf('/')\n }\n\n lastSlash = index\n dots = 0\n continue\n }\n } else if (result.length > 0) {\n result = ''\n lastSegmentLength = 0\n lastSlash = index\n dots = 0\n continue\n }\n }\n\n if (allowAboveRoot) {\n result = result.length > 0 ? result + '/..' : '..'\n lastSegmentLength = 2\n }\n } else {\n if (result.length > 0) {\n result += '/' + path.slice(lastSlash + 1, index)\n } else {\n result = path.slice(lastSlash + 1, index)\n }\n\n lastSegmentLength = index - lastSlash - 1\n }\n\n lastSlash = index\n dots = 0\n } else if (code === 46 /* `.` */ && dots > -1) {\n dots++\n } else {\n dots = -1\n }\n }\n\n return result\n}\n\n/**\n * Make sure `path` is a string.\n *\n * @param {string} path\n * File path.\n * @returns {asserts path is string}\n * Nothing.\n */\nfunction assertPath(path) {\n if (typeof path !== 'string') {\n throw new TypeError(\n 'Path must be a string. Received ' + JSON.stringify(path)\n )\n }\n}\n\n/* eslint-enable max-depth, complexity */\n","// Somewhat based on:\n// .\n// But I don’t think one tiny line of code can be copyrighted. 😅\nexport const proc = {cwd}\n\nfunction cwd() {\n return '/'\n}\n","/**\n * @typedef URL\n * @property {string} hash\n * @property {string} host\n * @property {string} hostname\n * @property {string} href\n * @property {string} origin\n * @property {string} password\n * @property {string} pathname\n * @property {string} port\n * @property {string} protocol\n * @property {string} search\n * @property {any} searchParams\n * @property {string} username\n * @property {() => string} toString\n * @property {() => string} toJSON\n */\n\n/**\n * Check if `fileUrlOrPath` looks like a URL.\n *\n * @param {unknown} fileUrlOrPath\n * File path or URL.\n * @returns {fileUrlOrPath is URL}\n * Whether it’s a URL.\n */\n// From: \nexport function isUrl(fileUrlOrPath) {\n return (\n fileUrlOrPath !== null &&\n typeof fileUrlOrPath === 'object' &&\n // @ts-expect-error: indexable.\n fileUrlOrPath.href &&\n // @ts-expect-error: indexable.\n fileUrlOrPath.origin\n )\n}\n","/// \n\nimport {isUrl} from './minurl.shared.js'\n\n// See: \n\n/**\n * @param {string | URL} path\n * File URL.\n * @returns {string}\n * File URL.\n */\nexport function urlToPath(path) {\n if (typeof path === 'string') {\n path = new URL(path)\n } else if (!isUrl(path)) {\n /** @type {NodeJS.ErrnoException} */\n const error = new TypeError(\n 'The \"path\" argument must be of type string or an instance of URL. Received `' +\n path +\n '`'\n )\n error.code = 'ERR_INVALID_ARG_TYPE'\n throw error\n }\n\n if (path.protocol !== 'file:') {\n /** @type {NodeJS.ErrnoException} */\n const error = new TypeError('The URL must be of scheme file')\n error.code = 'ERR_INVALID_URL_SCHEME'\n throw error\n }\n\n return getPathFromURLPosix(path)\n}\n\n/**\n * Get a path from a POSIX URL.\n *\n * @param {URL} url\n * URL.\n * @returns {string}\n * File path.\n */\nfunction getPathFromURLPosix(url) {\n if (url.hostname !== '') {\n /** @type {NodeJS.ErrnoException} */\n const error = new TypeError(\n 'File URL host must be \"localhost\" or empty on darwin'\n )\n error.code = 'ERR_INVALID_FILE_URL_HOST'\n throw error\n }\n\n const pathname = url.pathname\n let index = -1\n\n while (++index < pathname.length) {\n if (\n pathname.charCodeAt(index) === 37 /* `%` */ &&\n pathname.charCodeAt(index + 1) === 50 /* `2` */\n ) {\n const third = pathname.charCodeAt(index + 2)\n if (third === 70 /* `F` */ || third === 102 /* `f` */) {\n /** @type {NodeJS.ErrnoException} */\n const error = new TypeError(\n 'File URL path must not include encoded / characters'\n )\n error.code = 'ERR_INVALID_FILE_URL_PATH'\n throw error\n }\n }\n }\n\n return decodeURIComponent(pathname)\n}\n\nexport {isUrl} from './minurl.shared.js'\n","/**\n * @typedef {import('unist').Node} Node\n * @typedef {import('unist').Position} Position\n * @typedef {import('unist').Point} Point\n * @typedef {import('./minurl.shared.js').URL} URL\n * @typedef {import('../index.js').Data} Data\n * @typedef {import('../index.js').Value} Value\n */\n\n/**\n * @typedef {Record & {type: string, position?: Position | undefined}} NodeLike\n *\n * @typedef {'ascii' | 'utf8' | 'utf-8' | 'utf16le' | 'ucs2' | 'ucs-2' | 'base64' | 'base64url' | 'latin1' | 'binary' | 'hex'} BufferEncoding\n * Encodings supported by the buffer class.\n *\n * This is a copy of the types from Node, copied to prevent Node globals from\n * being needed.\n * Copied from: \n *\n * @typedef {Options | URL | Value | VFile} Compatible\n * Things that can be passed to the constructor.\n *\n * @typedef VFileCoreOptions\n * Set multiple values.\n * @property {Value | null | undefined} [value]\n * Set `value`.\n * @property {string | null | undefined} [cwd]\n * Set `cwd`.\n * @property {Array | null | undefined} [history]\n * Set `history`.\n * @property {URL | string | null | undefined} [path]\n * Set `path`.\n * @property {string | null | undefined} [basename]\n * Set `basename`.\n * @property {string | null | undefined} [stem]\n * Set `stem`.\n * @property {string | null | undefined} [extname]\n * Set `extname`.\n * @property {string | null | undefined} [dirname]\n * Set `dirname`.\n * @property {Data | null | undefined} [data]\n * Set `data`.\n *\n * @typedef Map\n * Raw source map.\n *\n * See:\n * .\n * @property {number} version\n * Which version of the source map spec this map is following.\n * @property {Array} sources\n * An array of URLs to the original source files.\n * @property {Array} names\n * An array of identifiers which can be referenced by individual mappings.\n * @property {string | undefined} [sourceRoot]\n * The URL root from which all sources are relative.\n * @property {Array | undefined} [sourcesContent]\n * An array of contents of the original source files.\n * @property {string} mappings\n * A string of base64 VLQs which contain the actual mappings.\n * @property {string} file\n * The generated file this source map is associated with.\n *\n * @typedef {{[key: string]: unknown} & VFileCoreOptions} Options\n * Configuration.\n *\n * A bunch of keys that will be shallow copied over to the new file.\n *\n * @typedef {Record} ReporterSettings\n * Configuration for reporters.\n */\n\n/**\n * @template {ReporterSettings} Settings\n * Options type.\n * @callback Reporter\n * Type for a reporter.\n * @param {Array} files\n * Files to report.\n * @param {Settings} options\n * Configuration.\n * @returns {string}\n * Report.\n */\n\nimport bufferLike from 'is-buffer'\nimport {VFileMessage} from 'vfile-message'\nimport {path} from './minpath.js'\nimport {proc} from './minproc.js'\nimport {urlToPath, isUrl} from './minurl.js'\n\n/**\n * Order of setting (least specific to most), we need this because otherwise\n * `{stem: 'a', path: '~/b.js'}` would throw, as a path is needed before a\n * stem can be set.\n *\n * @type {Array<'basename' | 'dirname' | 'extname' | 'history' | 'path' | 'stem'>}\n */\nconst order = ['history', 'path', 'basename', 'stem', 'extname', 'dirname']\n\nexport class VFile {\n /**\n * Create a new virtual file.\n *\n * `options` is treated as:\n *\n * * `string` or `Buffer` — `{value: options}`\n * * `URL` — `{path: options}`\n * * `VFile` — shallow copies its data over to the new file\n * * `object` — all fields are shallow copied over to the new file\n *\n * Path related fields are set in the following order (least specific to\n * most specific): `history`, `path`, `basename`, `stem`, `extname`,\n * `dirname`.\n *\n * You cannot set `dirname` or `extname` without setting either `history`,\n * `path`, `basename`, or `stem` too.\n *\n * @param {Compatible | null | undefined} [value]\n * File value.\n * @returns\n * New instance.\n */\n constructor(value) {\n /** @type {Options | VFile} */\n let options\n\n if (!value) {\n options = {}\n } else if (typeof value === 'string' || buffer(value)) {\n options = {value}\n } else if (isUrl(value)) {\n options = {path: value}\n } else {\n options = value\n }\n\n /**\n * Place to store custom information (default: `{}`).\n *\n * It’s OK to store custom data directly on the file but moving it to\n * `data` is recommended.\n *\n * @type {Data}\n */\n this.data = {}\n\n /**\n * List of messages associated with the file.\n *\n * @type {Array}\n */\n this.messages = []\n\n /**\n * List of filepaths the file moved between.\n *\n * The first is the original path and the last is the current path.\n *\n * @type {Array}\n */\n this.history = []\n\n /**\n * Base of `path` (default: `process.cwd()` or `'/'` in browsers).\n *\n * @type {string}\n */\n this.cwd = proc.cwd()\n\n /* eslint-disable no-unused-expressions */\n /**\n * Raw value.\n *\n * @type {Value}\n */\n this.value\n\n // The below are non-standard, they are “well-known”.\n // As in, used in several tools.\n\n /**\n * Whether a file was saved to disk.\n *\n * This is used by vfile reporters.\n *\n * @type {boolean}\n */\n this.stored\n\n /**\n * Custom, non-string, compiled, representation.\n *\n * This is used by unified to store non-string results.\n * One example is when turning markdown into React nodes.\n *\n * @type {unknown}\n */\n this.result\n\n /**\n * Source map.\n *\n * This type is equivalent to the `RawSourceMap` type from the `source-map`\n * module.\n *\n * @type {Map | null | undefined}\n */\n this.map\n /* eslint-enable no-unused-expressions */\n\n // Set path related properties in the correct order.\n let index = -1\n\n while (++index < order.length) {\n const prop = order[index]\n\n // Note: we specifically use `in` instead of `hasOwnProperty` to accept\n // `vfile`s too.\n if (\n prop in options &&\n options[prop] !== undefined &&\n options[prop] !== null\n ) {\n // @ts-expect-error: TS doesn’t understand basic reality.\n this[prop] = prop === 'history' ? [...options[prop]] : options[prop]\n }\n }\n\n /** @type {string} */\n let prop\n\n // Set non-path related properties.\n for (prop in options) {\n // @ts-expect-error: fine to set other things.\n if (!order.includes(prop)) {\n // @ts-expect-error: fine to set other things.\n this[prop] = options[prop]\n }\n }\n }\n\n /**\n * Get the full path (example: `'~/index.min.js'`).\n *\n * @returns {string}\n */\n get path() {\n return this.history[this.history.length - 1]\n }\n\n /**\n * Set the full path (example: `'~/index.min.js'`).\n *\n * Cannot be nullified.\n * You can set a file URL (a `URL` object with a `file:` protocol) which will\n * be turned into a path with `url.fileURLToPath`.\n *\n * @param {string | URL} path\n */\n set path(path) {\n if (isUrl(path)) {\n path = urlToPath(path)\n }\n\n assertNonEmpty(path, 'path')\n\n if (this.path !== path) {\n this.history.push(path)\n }\n }\n\n /**\n * Get the parent path (example: `'~'`).\n */\n get dirname() {\n return typeof this.path === 'string' ? path.dirname(this.path) : undefined\n }\n\n /**\n * Set the parent path (example: `'~'`).\n *\n * Cannot be set if there’s no `path` yet.\n */\n set dirname(dirname) {\n assertPath(this.basename, 'dirname')\n this.path = path.join(dirname || '', this.basename)\n }\n\n /**\n * Get the basename (including extname) (example: `'index.min.js'`).\n */\n get basename() {\n return typeof this.path === 'string' ? path.basename(this.path) : undefined\n }\n\n /**\n * Set basename (including extname) (`'index.min.js'`).\n *\n * Cannot contain path separators (`'/'` on unix, macOS, and browsers, `'\\'`\n * on windows).\n * Cannot be nullified (use `file.path = file.dirname` instead).\n */\n set basename(basename) {\n assertNonEmpty(basename, 'basename')\n assertPart(basename, 'basename')\n this.path = path.join(this.dirname || '', basename)\n }\n\n /**\n * Get the extname (including dot) (example: `'.js'`).\n */\n get extname() {\n return typeof this.path === 'string' ? path.extname(this.path) : undefined\n }\n\n /**\n * Set the extname (including dot) (example: `'.js'`).\n *\n * Cannot contain path separators (`'/'` on unix, macOS, and browsers, `'\\'`\n * on windows).\n * Cannot be set if there’s no `path` yet.\n */\n set extname(extname) {\n assertPart(extname, 'extname')\n assertPath(this.dirname, 'extname')\n\n if (extname) {\n if (extname.charCodeAt(0) !== 46 /* `.` */) {\n throw new Error('`extname` must start with `.`')\n }\n\n if (extname.includes('.', 1)) {\n throw new Error('`extname` cannot contain multiple dots')\n }\n }\n\n this.path = path.join(this.dirname, this.stem + (extname || ''))\n }\n\n /**\n * Get the stem (basename w/o extname) (example: `'index.min'`).\n */\n get stem() {\n return typeof this.path === 'string'\n ? path.basename(this.path, this.extname)\n : undefined\n }\n\n /**\n * Set the stem (basename w/o extname) (example: `'index.min'`).\n *\n * Cannot contain path separators (`'/'` on unix, macOS, and browsers, `'\\'`\n * on windows).\n * Cannot be nullified (use `file.path = file.dirname` instead).\n */\n set stem(stem) {\n assertNonEmpty(stem, 'stem')\n assertPart(stem, 'stem')\n this.path = path.join(this.dirname || '', stem + (this.extname || ''))\n }\n\n /**\n * Serialize the file.\n *\n * @param {BufferEncoding | null | undefined} [encoding='utf8']\n * Character encoding to understand `value` as when it’s a `Buffer`\n * (default: `'utf8'`).\n * @returns {string}\n * Serialized file.\n */\n toString(encoding) {\n return (this.value || '').toString(encoding || undefined)\n }\n\n /**\n * Create a warning message associated with the file.\n *\n * Its `fatal` is set to `false` and `file` is set to the current file path.\n * Its added to `file.messages`.\n *\n * @param {string | Error | VFileMessage} reason\n * Reason for message, uses the stack and message of the error if given.\n * @param {Node | NodeLike | Position | Point | null | undefined} [place]\n * Place in file where the message occurred.\n * @param {string | null | undefined} [origin]\n * Place in code where the message originates (example:\n * `'my-package:my-rule'` or `'my-rule'`).\n * @returns {VFileMessage}\n * Message.\n */\n message(reason, place, origin) {\n const message = new VFileMessage(reason, place, origin)\n\n if (this.path) {\n message.name = this.path + ':' + message.name\n message.file = this.path\n }\n\n message.fatal = false\n\n this.messages.push(message)\n\n return message\n }\n\n /**\n * Create an info message associated with the file.\n *\n * Its `fatal` is set to `null` and `file` is set to the current file path.\n * Its added to `file.messages`.\n *\n * @param {string | Error | VFileMessage} reason\n * Reason for message, uses the stack and message of the error if given.\n * @param {Node | NodeLike | Position | Point | null | undefined} [place]\n * Place in file where the message occurred.\n * @param {string | null | undefined} [origin]\n * Place in code where the message originates (example:\n * `'my-package:my-rule'` or `'my-rule'`).\n * @returns {VFileMessage}\n * Message.\n */\n info(reason, place, origin) {\n const message = this.message(reason, place, origin)\n\n message.fatal = null\n\n return message\n }\n\n /**\n * Create a fatal error associated with the file.\n *\n * Its `fatal` is set to `true` and `file` is set to the current file path.\n * Its added to `file.messages`.\n *\n * > 👉 **Note**: a fatal error means that a file is no longer processable.\n *\n * @param {string | Error | VFileMessage} reason\n * Reason for message, uses the stack and message of the error if given.\n * @param {Node | NodeLike | Position | Point | null | undefined} [place]\n * Place in file where the message occurred.\n * @param {string | null | undefined} [origin]\n * Place in code where the message originates (example:\n * `'my-package:my-rule'` or `'my-rule'`).\n * @returns {never}\n * Message.\n * @throws {VFileMessage}\n * Message.\n */\n fail(reason, place, origin) {\n const message = this.message(reason, place, origin)\n\n message.fatal = true\n\n throw message\n }\n}\n\n/**\n * Assert that `part` is not a path (as in, does not contain `path.sep`).\n *\n * @param {string | null | undefined} part\n * File path part.\n * @param {string} name\n * Part name.\n * @returns {void}\n * Nothing.\n */\nfunction assertPart(part, name) {\n if (part && part.includes(path.sep)) {\n throw new Error(\n '`' + name + '` cannot be a path: did not expect `' + path.sep + '`'\n )\n }\n}\n\n/**\n * Assert that `part` is not empty.\n *\n * @param {string | undefined} part\n * Thing.\n * @param {string} name\n * Part name.\n * @returns {asserts part is string}\n * Nothing.\n */\nfunction assertNonEmpty(part, name) {\n if (!part) {\n throw new Error('`' + name + '` cannot be empty')\n }\n}\n\n/**\n * Assert `path` exists.\n *\n * @param {string | undefined} path\n * Path.\n * @param {string} name\n * Dependency name.\n * @returns {asserts path is string}\n * Nothing.\n */\nfunction assertPath(path, name) {\n if (!path) {\n throw new Error('Setting `' + name + '` requires `path` to be set too')\n }\n}\n\n/**\n * Assert `value` is a buffer.\n *\n * @param {unknown} value\n * thing.\n * @returns {value is Buffer}\n * Whether `value` is a Node.js buffer.\n */\nfunction buffer(value) {\n return bufferLike(value)\n}\n","/**\n * @typedef {import('unist').Node} Node\n * @typedef {import('vfile').VFileCompatible} VFileCompatible\n * @typedef {import('vfile').VFileValue} VFileValue\n * @typedef {import('..').Processor} Processor\n * @typedef {import('..').Plugin} Plugin\n * @typedef {import('..').Preset} Preset\n * @typedef {import('..').Pluggable} Pluggable\n * @typedef {import('..').PluggableList} PluggableList\n * @typedef {import('..').Transformer} Transformer\n * @typedef {import('..').Parser} Parser\n * @typedef {import('..').Compiler} Compiler\n * @typedef {import('..').RunCallback} RunCallback\n * @typedef {import('..').ProcessCallback} ProcessCallback\n *\n * @typedef Context\n * @property {Node} tree\n * @property {VFile} file\n */\n\nimport {bail} from 'bail'\nimport isBuffer from 'is-buffer'\nimport extend from 'extend'\nimport isPlainObj from 'is-plain-obj'\nimport {trough} from 'trough'\nimport {VFile} from 'vfile'\n\n// Expose a frozen processor.\nexport const unified = base().freeze()\n\nconst own = {}.hasOwnProperty\n\n// Function to create the first processor.\n/**\n * @returns {Processor}\n */\nfunction base() {\n const transformers = trough()\n /** @type {Processor['attachers']} */\n const attachers = []\n /** @type {Record} */\n let namespace = {}\n /** @type {boolean|undefined} */\n let frozen\n let freezeIndex = -1\n\n // Data management.\n // @ts-expect-error: overloads are handled.\n processor.data = data\n processor.Parser = undefined\n processor.Compiler = undefined\n\n // Lock.\n processor.freeze = freeze\n\n // Plugins.\n processor.attachers = attachers\n // @ts-expect-error: overloads are handled.\n processor.use = use\n\n // API.\n processor.parse = parse\n processor.stringify = stringify\n // @ts-expect-error: overloads are handled.\n processor.run = run\n processor.runSync = runSync\n // @ts-expect-error: overloads are handled.\n processor.process = process\n processor.processSync = processSync\n\n // Expose.\n return processor\n\n // Create a new processor based on the processor in the current scope.\n /** @type {Processor} */\n function processor() {\n const destination = base()\n let index = -1\n\n while (++index < attachers.length) {\n destination.use(...attachers[index])\n }\n\n destination.data(extend(true, {}, namespace))\n\n return destination\n }\n\n /**\n * @param {string|Record} [key]\n * @param {unknown} [value]\n * @returns {unknown}\n */\n function data(key, value) {\n if (typeof key === 'string') {\n // Set `key`.\n if (arguments.length === 2) {\n assertUnfrozen('data', frozen)\n namespace[key] = value\n return processor\n }\n\n // Get `key`.\n return (own.call(namespace, key) && namespace[key]) || null\n }\n\n // Set space.\n if (key) {\n assertUnfrozen('data', frozen)\n namespace = key\n return processor\n }\n\n // Get space.\n return namespace\n }\n\n /** @type {Processor['freeze']} */\n function freeze() {\n if (frozen) {\n return processor\n }\n\n while (++freezeIndex < attachers.length) {\n const [attacher, ...options] = attachers[freezeIndex]\n\n if (options[0] === false) {\n continue\n }\n\n if (options[0] === true) {\n options[0] = undefined\n }\n\n /** @type {Transformer|void} */\n const transformer = attacher.call(processor, ...options)\n\n if (typeof transformer === 'function') {\n transformers.use(transformer)\n }\n }\n\n frozen = true\n freezeIndex = Number.POSITIVE_INFINITY\n\n return processor\n }\n\n /**\n * @param {Pluggable|null|undefined} [value]\n * @param {...unknown} options\n * @returns {Processor}\n */\n function use(value, ...options) {\n /** @type {Record|undefined} */\n let settings\n\n assertUnfrozen('use', frozen)\n\n if (value === null || value === undefined) {\n // Empty.\n } else if (typeof value === 'function') {\n addPlugin(value, ...options)\n } else if (typeof value === 'object') {\n if (Array.isArray(value)) {\n addList(value)\n } else {\n addPreset(value)\n }\n } else {\n throw new TypeError('Expected usable value, not `' + value + '`')\n }\n\n if (settings) {\n namespace.settings = Object.assign(namespace.settings || {}, settings)\n }\n\n return processor\n\n /**\n * @param {import('..').Pluggable} value\n * @returns {void}\n */\n function add(value) {\n if (typeof value === 'function') {\n addPlugin(value)\n } else if (typeof value === 'object') {\n if (Array.isArray(value)) {\n const [plugin, ...options] = value\n addPlugin(plugin, ...options)\n } else {\n addPreset(value)\n }\n } else {\n throw new TypeError('Expected usable value, not `' + value + '`')\n }\n }\n\n /**\n * @param {Preset} result\n * @returns {void}\n */\n function addPreset(result) {\n addList(result.plugins)\n\n if (result.settings) {\n settings = Object.assign(settings || {}, result.settings)\n }\n }\n\n /**\n * @param {PluggableList|null|undefined} [plugins]\n * @returns {void}\n */\n function addList(plugins) {\n let index = -1\n\n if (plugins === null || plugins === undefined) {\n // Empty.\n } else if (Array.isArray(plugins)) {\n while (++index < plugins.length) {\n const thing = plugins[index]\n add(thing)\n }\n } else {\n throw new TypeError('Expected a list of plugins, not `' + plugins + '`')\n }\n }\n\n /**\n * @param {Plugin} plugin\n * @param {...unknown} [value]\n * @returns {void}\n */\n function addPlugin(plugin, value) {\n let index = -1\n /** @type {Processor['attachers'][number]|undefined} */\n let entry\n\n while (++index < attachers.length) {\n if (attachers[index][0] === plugin) {\n entry = attachers[index]\n break\n }\n }\n\n if (entry) {\n if (isPlainObj(entry[1]) && isPlainObj(value)) {\n value = extend(true, entry[1], value)\n }\n\n entry[1] = value\n } else {\n // @ts-expect-error: fine.\n attachers.push([...arguments])\n }\n }\n }\n\n /** @type {Processor['parse']} */\n function parse(doc) {\n processor.freeze()\n const file = vfile(doc)\n const Parser = processor.Parser\n assertParser('parse', Parser)\n\n if (newable(Parser, 'parse')) {\n // @ts-expect-error: `newable` checks this.\n return new Parser(String(file), file).parse()\n }\n\n // @ts-expect-error: `newable` checks this.\n return Parser(String(file), file) // eslint-disable-line new-cap\n }\n\n /** @type {Processor['stringify']} */\n function stringify(node, doc) {\n processor.freeze()\n const file = vfile(doc)\n const Compiler = processor.Compiler\n assertCompiler('stringify', Compiler)\n assertNode(node)\n\n if (newable(Compiler, 'compile')) {\n // @ts-expect-error: `newable` checks this.\n return new Compiler(node, file).compile()\n }\n\n // @ts-expect-error: `newable` checks this.\n return Compiler(node, file) // eslint-disable-line new-cap\n }\n\n /**\n * @param {Node} node\n * @param {VFileCompatible|RunCallback} [doc]\n * @param {RunCallback} [callback]\n * @returns {Promise|void}\n */\n function run(node, doc, callback) {\n assertNode(node)\n processor.freeze()\n\n if (!callback && typeof doc === 'function') {\n callback = doc\n doc = undefined\n }\n\n if (!callback) {\n return new Promise(executor)\n }\n\n executor(null, callback)\n\n /**\n * @param {null|((node: Node) => void)} resolve\n * @param {(error: Error) => void} reject\n * @returns {void}\n */\n function executor(resolve, reject) {\n // @ts-expect-error: `doc` can’t be a callback anymore, we checked.\n transformers.run(node, vfile(doc), done)\n\n /**\n * @param {Error|null} error\n * @param {Node} tree\n * @param {VFile} file\n * @returns {void}\n */\n function done(error, tree, file) {\n tree = tree || node\n if (error) {\n reject(error)\n } else if (resolve) {\n resolve(tree)\n } else {\n // @ts-expect-error: `callback` is defined if `resolve` is not.\n callback(null, tree, file)\n }\n }\n }\n }\n\n /** @type {Processor['runSync']} */\n function runSync(node, file) {\n /** @type {Node|undefined} */\n let result\n /** @type {boolean|undefined} */\n let complete\n\n processor.run(node, file, done)\n\n assertDone('runSync', 'run', complete)\n\n // @ts-expect-error: we either bailed on an error or have a tree.\n return result\n\n /**\n * @param {Error|null} [error]\n * @param {Node} [tree]\n * @returns {void}\n */\n function done(error, tree) {\n bail(error)\n result = tree\n complete = true\n }\n }\n\n /**\n * @param {VFileCompatible} doc\n * @param {ProcessCallback} [callback]\n * @returns {Promise|undefined}\n */\n function process(doc, callback) {\n processor.freeze()\n assertParser('process', processor.Parser)\n assertCompiler('process', processor.Compiler)\n\n if (!callback) {\n return new Promise(executor)\n }\n\n executor(null, callback)\n\n /**\n * @param {null|((file: VFile) => void)} resolve\n * @param {(error?: Error|null|undefined) => void} reject\n * @returns {void}\n */\n function executor(resolve, reject) {\n const file = vfile(doc)\n\n processor.run(processor.parse(file), file, (error, tree, file) => {\n if (error || !tree || !file) {\n done(error)\n } else {\n /** @type {unknown} */\n const result = processor.stringify(tree, file)\n\n if (result === undefined || result === null) {\n // Empty.\n } else if (looksLikeAVFileValue(result)) {\n file.value = result\n } else {\n file.result = result\n }\n\n done(error, file)\n }\n })\n\n /**\n * @param {Error|null|undefined} [error]\n * @param {VFile|undefined} [file]\n * @returns {void}\n */\n function done(error, file) {\n if (error || !file) {\n reject(error)\n } else if (resolve) {\n resolve(file)\n } else {\n // @ts-expect-error: `callback` is defined if `resolve` is not.\n callback(null, file)\n }\n }\n }\n }\n\n /** @type {Processor['processSync']} */\n function processSync(doc) {\n /** @type {boolean|undefined} */\n let complete\n\n processor.freeze()\n assertParser('processSync', processor.Parser)\n assertCompiler('processSync', processor.Compiler)\n\n const file = vfile(doc)\n\n processor.process(file, done)\n\n assertDone('processSync', 'process', complete)\n\n return file\n\n /**\n * @param {Error|null|undefined} [error]\n * @returns {void}\n */\n function done(error) {\n complete = true\n bail(error)\n }\n }\n}\n\n/**\n * Check if `value` is a constructor.\n *\n * @param {unknown} value\n * @param {string} name\n * @returns {boolean}\n */\nfunction newable(value, name) {\n return (\n typeof value === 'function' &&\n // Prototypes do exist.\n // type-coverage:ignore-next-line\n value.prototype &&\n // A function with keys in its prototype is probably a constructor.\n // Classes’ prototype methods are not enumerable, so we check if some value\n // exists in the prototype.\n // type-coverage:ignore-next-line\n (keys(value.prototype) || name in value.prototype)\n )\n}\n\n/**\n * Check if `value` is an object with keys.\n *\n * @param {Record} value\n * @returns {boolean}\n */\nfunction keys(value) {\n /** @type {string} */\n let key\n\n for (key in value) {\n if (own.call(value, key)) {\n return true\n }\n }\n\n return false\n}\n\n/**\n * Assert a parser is available.\n *\n * @param {string} name\n * @param {unknown} value\n * @returns {asserts value is Parser}\n */\nfunction assertParser(name, value) {\n if (typeof value !== 'function') {\n throw new TypeError('Cannot `' + name + '` without `Parser`')\n }\n}\n\n/**\n * Assert a compiler is available.\n *\n * @param {string} name\n * @param {unknown} value\n * @returns {asserts value is Compiler}\n */\nfunction assertCompiler(name, value) {\n if (typeof value !== 'function') {\n throw new TypeError('Cannot `' + name + '` without `Compiler`')\n }\n}\n\n/**\n * Assert the processor is not frozen.\n *\n * @param {string} name\n * @param {unknown} frozen\n * @returns {asserts frozen is false}\n */\nfunction assertUnfrozen(name, frozen) {\n if (frozen) {\n throw new Error(\n 'Cannot call `' +\n name +\n '` on a frozen processor.\\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.'\n )\n }\n}\n\n/**\n * Assert `node` is a unist node.\n *\n * @param {unknown} node\n * @returns {asserts node is Node}\n */\nfunction assertNode(node) {\n // `isPlainObj` unfortunately uses `any` instead of `unknown`.\n // type-coverage:ignore-next-line\n if (!isPlainObj(node) || typeof node.type !== 'string') {\n throw new TypeError('Expected node, got `' + node + '`')\n // Fine.\n }\n}\n\n/**\n * Assert that `complete` is `true`.\n *\n * @param {string} name\n * @param {string} asyncName\n * @param {unknown} complete\n * @returns {asserts complete is true}\n */\nfunction assertDone(name, asyncName, complete) {\n if (!complete) {\n throw new Error(\n '`' + name + '` finished async. Use `' + asyncName + '` instead'\n )\n }\n}\n\n/**\n * @param {VFileCompatible} [value]\n * @returns {VFile}\n */\nfunction vfile(value) {\n return looksLikeAVFile(value) ? value : new VFile(value)\n}\n\n/**\n * @param {VFileCompatible} [value]\n * @returns {value is VFile}\n */\nfunction looksLikeAVFile(value) {\n return Boolean(\n value &&\n typeof value === 'object' &&\n 'message' in value &&\n 'messages' in value\n )\n}\n\n/**\n * @param {unknown} [value]\n * @returns {value is VFileValue}\n */\nfunction looksLikeAVFileValue(value) {\n return typeof value === 'string' || isBuffer(value)\n}\n","/**\n * @typedef {import('mdast').Root|import('mdast').Content} Node\n *\n * @typedef Options\n * Configuration (optional).\n * @property {boolean | null | undefined} [includeImageAlt=true]\n * Whether to use `alt` for `image`s.\n * @property {boolean | null | undefined} [includeHtml=true]\n * Whether to use `value` of HTML.\n */\n\n/** @type {Options} */\nconst emptyOptions = {}\n\n/**\n * Get the text content of a node or list of nodes.\n *\n * Prefers the node’s plain-text fields, otherwise serializes its children,\n * and if the given value is an array, serialize the nodes in it.\n *\n * @param {unknown} value\n * Thing to serialize, typically `Node`.\n * @param {Options | null | undefined} [options]\n * Configuration (optional).\n * @returns {string}\n * Serialized `value`.\n */\nexport function toString(value, options) {\n const settings = options || emptyOptions\n const includeImageAlt =\n typeof settings.includeImageAlt === 'boolean'\n ? settings.includeImageAlt\n : true\n const includeHtml =\n typeof settings.includeHtml === 'boolean' ? settings.includeHtml : true\n\n return one(value, includeImageAlt, includeHtml)\n}\n\n/**\n * One node or several nodes.\n *\n * @param {unknown} value\n * Thing to serialize.\n * @param {boolean} includeImageAlt\n * Include image `alt`s.\n * @param {boolean} includeHtml\n * Include HTML.\n * @returns {string}\n * Serialized node.\n */\nfunction one(value, includeImageAlt, includeHtml) {\n if (node(value)) {\n if ('value' in value) {\n return value.type === 'html' && !includeHtml ? '' : value.value\n }\n\n if (includeImageAlt && 'alt' in value && value.alt) {\n return value.alt\n }\n\n if ('children' in value) {\n return all(value.children, includeImageAlt, includeHtml)\n }\n }\n\n if (Array.isArray(value)) {\n return all(value, includeImageAlt, includeHtml)\n }\n\n return ''\n}\n\n/**\n * Serialize a list of nodes.\n *\n * @param {Array} values\n * Thing to serialize.\n * @param {boolean} includeImageAlt\n * Include image `alt`s.\n * @param {boolean} includeHtml\n * Include HTML.\n * @returns {string}\n * Serialized nodes.\n */\nfunction all(values, includeImageAlt, includeHtml) {\n /** @type {Array} */\n const result = []\n let index = -1\n\n while (++index < values.length) {\n result[index] = one(values[index], includeImageAlt, includeHtml)\n }\n\n return result.join('')\n}\n\n/**\n * Check if `value` looks like a node.\n *\n * @param {unknown} value\n * Thing.\n * @returns {value is Node}\n * Whether `value` is a node.\n */\nfunction node(value) {\n return Boolean(value && typeof value === 'object')\n}\n","/**\n * Like `Array#splice`, but smarter for giant arrays.\n *\n * `Array#splice` takes all items to be inserted as individual argument which\n * causes a stack overflow in V8 when trying to insert 100k items for instance.\n *\n * Otherwise, this does not return the removed items, and takes `items` as an\n * array instead of rest parameters.\n *\n * @template {unknown} T\n * Item type.\n * @param {Array} list\n * List to operate on.\n * @param {number} start\n * Index to remove/insert at (can be negative).\n * @param {number} remove\n * Number of items to remove.\n * @param {Array} items\n * Items to inject into `list`.\n * @returns {void}\n * Nothing.\n */\nexport function splice(list, start, remove, items) {\n const end = list.length\n let chunkStart = 0\n /** @type {Array} */\n let parameters\n\n // Make start between zero and `end` (included).\n if (start < 0) {\n start = -start > end ? 0 : end + start\n } else {\n start = start > end ? end : start\n }\n remove = remove > 0 ? remove : 0\n\n // No need to chunk the items if there’s only a couple (10k) items.\n if (items.length < 10000) {\n parameters = Array.from(items)\n parameters.unshift(start, remove)\n // @ts-expect-error Hush, it’s fine.\n list.splice(...parameters)\n } else {\n // Delete `remove` items starting from `start`\n if (remove) list.splice(start, remove)\n\n // Insert the items in chunks to not cause stack overflows.\n while (chunkStart < items.length) {\n parameters = items.slice(chunkStart, chunkStart + 10000)\n parameters.unshift(start, 0)\n // @ts-expect-error Hush, it’s fine.\n list.splice(...parameters)\n chunkStart += 10000\n start += 10000\n }\n }\n}\n\n/**\n * Append `items` (an array) at the end of `list` (another array).\n * When `list` was empty, returns `items` instead.\n *\n * This prevents a potentially expensive operation when `list` is empty,\n * and adds items in batches to prevent V8 from hanging.\n *\n * @template {unknown} T\n * Item type.\n * @param {Array} list\n * List to operate on.\n * @param {Array} items\n * Items to add to `list`.\n * @returns {Array}\n * Either `list` or `items`.\n */\nexport function push(list, items) {\n if (list.length > 0) {\n splice(list, list.length, 0, items)\n return list\n }\n return items\n}\n","/**\n * @typedef {import('micromark-util-types').Extension} Extension\n * @typedef {import('micromark-util-types').Handles} Handles\n * @typedef {import('micromark-util-types').HtmlExtension} HtmlExtension\n * @typedef {import('micromark-util-types').NormalizedExtension} NormalizedExtension\n */\n\nimport {splice} from 'micromark-util-chunked'\n\nconst hasOwnProperty = {}.hasOwnProperty\n\n/**\n * Combine multiple syntax extensions into one.\n *\n * @param {Array} extensions\n * List of syntax extensions.\n * @returns {NormalizedExtension}\n * A single combined extension.\n */\nexport function combineExtensions(extensions) {\n /** @type {NormalizedExtension} */\n const all = {}\n let index = -1\n\n while (++index < extensions.length) {\n syntaxExtension(all, extensions[index])\n }\n\n return all\n}\n\n/**\n * Merge `extension` into `all`.\n *\n * @param {NormalizedExtension} all\n * Extension to merge into.\n * @param {Extension} extension\n * Extension to merge.\n * @returns {void}\n */\nfunction syntaxExtension(all, extension) {\n /** @type {keyof Extension} */\n let hook\n\n for (hook in extension) {\n const maybe = hasOwnProperty.call(all, hook) ? all[hook] : undefined\n /** @type {Record} */\n const left = maybe || (all[hook] = {})\n /** @type {Record | undefined} */\n const right = extension[hook]\n /** @type {string} */\n let code\n\n if (right) {\n for (code in right) {\n if (!hasOwnProperty.call(left, code)) left[code] = []\n const value = right[code]\n constructs(\n // @ts-expect-error Looks like a list.\n left[code],\n Array.isArray(value) ? value : value ? [value] : []\n )\n }\n }\n }\n}\n\n/**\n * Merge `list` into `existing` (both lists of constructs).\n * Mutates `existing`.\n *\n * @param {Array} existing\n * @param {Array} list\n * @returns {void}\n */\nfunction constructs(existing, list) {\n let index = -1\n /** @type {Array} */\n const before = []\n\n while (++index < list.length) {\n // @ts-expect-error Looks like an object.\n ;(list[index].add === 'after' ? existing : before).push(list[index])\n }\n\n splice(existing, 0, 0, before)\n}\n\n/**\n * Combine multiple HTML extensions into one.\n *\n * @param {Array} htmlExtensions\n * List of HTML extensions.\n * @returns {HtmlExtension}\n * A single combined HTML extension.\n */\nexport function combineHtmlExtensions(htmlExtensions) {\n /** @type {HtmlExtension} */\n const handlers = {}\n let index = -1\n\n while (++index < htmlExtensions.length) {\n htmlExtension(handlers, htmlExtensions[index])\n }\n\n return handlers\n}\n\n/**\n * Merge `extension` into `all`.\n *\n * @param {HtmlExtension} all\n * Extension to merge into.\n * @param {HtmlExtension} extension\n * Extension to merge.\n * @returns {void}\n */\nfunction htmlExtension(all, extension) {\n /** @type {keyof HtmlExtension} */\n let hook\n\n for (hook in extension) {\n const maybe = hasOwnProperty.call(all, hook) ? all[hook] : undefined\n const left = maybe || (all[hook] = {})\n const right = extension[hook]\n /** @type {keyof Handles} */\n let type\n\n if (right) {\n for (type in right) {\n // @ts-expect-error assume document vs regular handler are managed correctly.\n left[type] = right[type]\n }\n }\n }\n}\n","// This module is generated by `script/`.\n//\n// CommonMark handles attention (emphasis, strong) markers based on what comes\n// before or after them.\n// One such difference is if those characters are Unicode punctuation.\n// This script is generated from the Unicode data.\n\n/**\n * Regular expression that matches a unicode punctuation character.\n */\nexport const unicodePunctuationRegex =\n /[!-\\/:-@\\[-`\\{-~\\xA1\\xA7\\xAB\\xB6\\xB7\\xBB\\xBF\\u037E\\u0387\\u055A-\\u055F\\u0589\\u058A\\u05BE\\u05C0\\u05C3\\u05C6\\u05F3\\u05F4\\u0609\\u060A\\u060C\\u060D\\u061B\\u061D-\\u061F\\u066A-\\u066D\\u06D4\\u0700-\\u070D\\u07F7-\\u07F9\\u0830-\\u083E\\u085E\\u0964\\u0965\\u0970\\u09FD\\u0A76\\u0AF0\\u0C77\\u0C84\\u0DF4\\u0E4F\\u0E5A\\u0E5B\\u0F04-\\u0F12\\u0F14\\u0F3A-\\u0F3D\\u0F85\\u0FD0-\\u0FD4\\u0FD9\\u0FDA\\u104A-\\u104F\\u10FB\\u1360-\\u1368\\u1400\\u166E\\u169B\\u169C\\u16EB-\\u16ED\\u1735\\u1736\\u17D4-\\u17D6\\u17D8-\\u17DA\\u1800-\\u180A\\u1944\\u1945\\u1A1E\\u1A1F\\u1AA0-\\u1AA6\\u1AA8-\\u1AAD\\u1B5A-\\u1B60\\u1B7D\\u1B7E\\u1BFC-\\u1BFF\\u1C3B-\\u1C3F\\u1C7E\\u1C7F\\u1CC0-\\u1CC7\\u1CD3\\u2010-\\u2027\\u2030-\\u2043\\u2045-\\u2051\\u2053-\\u205E\\u207D\\u207E\\u208D\\u208E\\u2308-\\u230B\\u2329\\u232A\\u2768-\\u2775\\u27C5\\u27C6\\u27E6-\\u27EF\\u2983-\\u2998\\u29D8-\\u29DB\\u29FC\\u29FD\\u2CF9-\\u2CFC\\u2CFE\\u2CFF\\u2D70\\u2E00-\\u2E2E\\u2E30-\\u2E4F\\u2E52-\\u2E5D\\u3001-\\u3003\\u3008-\\u3011\\u3014-\\u301F\\u3030\\u303D\\u30A0\\u30FB\\uA4FE\\uA4FF\\uA60D-\\uA60F\\uA673\\uA67E\\uA6F2-\\uA6F7\\uA874-\\uA877\\uA8CE\\uA8CF\\uA8F8-\\uA8FA\\uA8FC\\uA92E\\uA92F\\uA95F\\uA9C1-\\uA9CD\\uA9DE\\uA9DF\\uAA5C-\\uAA5F\\uAADE\\uAADF\\uAAF0\\uAAF1\\uABEB\\uFD3E\\uFD3F\\uFE10-\\uFE19\\uFE30-\\uFE52\\uFE54-\\uFE61\\uFE63\\uFE68\\uFE6A\\uFE6B\\uFF01-\\uFF03\\uFF05-\\uFF0A\\uFF0C-\\uFF0F\\uFF1A\\uFF1B\\uFF1F\\uFF20\\uFF3B-\\uFF3D\\uFF3F\\uFF5B\\uFF5D\\uFF5F-\\uFF65]/\n","/**\n * @typedef {import('micromark-util-types').Code} Code\n */\n\nimport {unicodePunctuationRegex} from './lib/unicode-punctuation-regex.js'\n\n/**\n * Check whether the character code represents an ASCII alpha (`a` through `z`,\n * case insensitive).\n *\n * An **ASCII alpha** is an ASCII upper alpha or ASCII lower alpha.\n *\n * An **ASCII upper alpha** is a character in the inclusive range U+0041 (`A`)\n * to U+005A (`Z`).\n *\n * An **ASCII lower alpha** is a character in the inclusive range U+0061 (`a`)\n * to U+007A (`z`).\n *\n * @param code\n * Code.\n * @returns\n * Whether it matches.\n */\nexport const asciiAlpha = regexCheck(/[A-Za-z]/)\n\n/**\n * Check whether the character code represents an ASCII alphanumeric (`a`\n * through `z`, case insensitive, or `0` through `9`).\n *\n * An **ASCII alphanumeric** is an ASCII digit (see `asciiDigit`) or ASCII alpha\n * (see `asciiAlpha`).\n *\n * @param code\n * Code.\n * @returns\n * Whether it matches.\n */\nexport const asciiAlphanumeric = regexCheck(/[\\dA-Za-z]/)\n\n/**\n * Check whether the character code represents an ASCII atext.\n *\n * atext is an ASCII alphanumeric (see `asciiAlphanumeric`), or a character in\n * the inclusive ranges U+0023 NUMBER SIGN (`#`) to U+0027 APOSTROPHE (`'`),\n * U+002A ASTERISK (`*`), U+002B PLUS SIGN (`+`), U+002D DASH (`-`), U+002F\n * SLASH (`/`), U+003D EQUALS TO (`=`), U+003F QUESTION MARK (`?`), U+005E\n * CARET (`^`) to U+0060 GRAVE ACCENT (`` ` ``), or U+007B LEFT CURLY BRACE\n * (`{`) to U+007E TILDE (`~`).\n *\n * See:\n * **\\[RFC5322]**:\n * [Internet Message Format](https://tools.ietf.org/html/rfc5322).\n * P. Resnick.\n * IETF.\n *\n * @param code\n * Code.\n * @returns\n * Whether it matches.\n */\nexport const asciiAtext = regexCheck(/[#-'*+\\--9=?A-Z^-~]/)\n\n/**\n * Check whether a character code is an ASCII control character.\n *\n * An **ASCII control** is a character in the inclusive range U+0000 NULL (NUL)\n * to U+001F (US), or U+007F (DEL).\n *\n * @param {Code} code\n * Code.\n * @returns {boolean}\n * Whether it matches.\n */\nexport function asciiControl(code) {\n return (\n // Special whitespace codes (which have negative values), C0 and Control\n // character DEL\n code !== null && (code < 32 || code === 127)\n )\n}\n\n/**\n * Check whether the character code represents an ASCII digit (`0` through `9`).\n *\n * An **ASCII digit** is a character in the inclusive range U+0030 (`0`) to\n * U+0039 (`9`).\n *\n * @param code\n * Code.\n * @returns\n * Whether it matches.\n */\nexport const asciiDigit = regexCheck(/\\d/)\n\n/**\n * Check whether the character code represents an ASCII hex digit (`a` through\n * `f`, case insensitive, or `0` through `9`).\n *\n * An **ASCII hex digit** is an ASCII digit (see `asciiDigit`), ASCII upper hex\n * digit, or an ASCII lower hex digit.\n *\n * An **ASCII upper hex digit** is a character in the inclusive range U+0041\n * (`A`) to U+0046 (`F`).\n *\n * An **ASCII lower hex digit** is a character in the inclusive range U+0061\n * (`a`) to U+0066 (`f`).\n *\n * @param code\n * Code.\n * @returns\n * Whether it matches.\n */\nexport const asciiHexDigit = regexCheck(/[\\dA-Fa-f]/)\n\n/**\n * Check whether the character code represents ASCII punctuation.\n *\n * An **ASCII punctuation** is a character in the inclusive ranges U+0021\n * EXCLAMATION MARK (`!`) to U+002F SLASH (`/`), U+003A COLON (`:`) to U+0040 AT\n * SIGN (`@`), U+005B LEFT SQUARE BRACKET (`[`) to U+0060 GRAVE ACCENT\n * (`` ` ``), or U+007B LEFT CURLY BRACE (`{`) to U+007E TILDE (`~`).\n *\n * @param code\n * Code.\n * @returns\n * Whether it matches.\n */\nexport const asciiPunctuation = regexCheck(/[!-/:-@[-`{-~]/)\n\n/**\n * Check whether a character code is a markdown line ending.\n *\n * A **markdown line ending** is the virtual characters M-0003 CARRIAGE RETURN\n * LINE FEED (CRLF), M-0004 LINE FEED (LF) and M-0005 CARRIAGE RETURN (CR).\n *\n * In micromark, the actual character U+000A LINE FEED (LF) and U+000D CARRIAGE\n * RETURN (CR) are replaced by these virtual characters depending on whether\n * they occurred together.\n *\n * @param {Code} code\n * Code.\n * @returns {boolean}\n * Whether it matches.\n */\nexport function markdownLineEnding(code) {\n return code !== null && code < -2\n}\n\n/**\n * Check whether a character code is a markdown line ending (see\n * `markdownLineEnding`) or markdown space (see `markdownSpace`).\n *\n * @param {Code} code\n * Code.\n * @returns {boolean}\n * Whether it matches.\n */\nexport function markdownLineEndingOrSpace(code) {\n return code !== null && (code < 0 || code === 32)\n}\n\n/**\n * Check whether a character code is a markdown space.\n *\n * A **markdown space** is the concrete character U+0020 SPACE (SP) and the\n * virtual characters M-0001 VIRTUAL SPACE (VS) and M-0002 HORIZONTAL TAB (HT).\n *\n * In micromark, the actual character U+0009 CHARACTER TABULATION (HT) is\n * replaced by one M-0002 HORIZONTAL TAB (HT) and between 0 and 3 M-0001 VIRTUAL\n * SPACE (VS) characters, depending on the column at which the tab occurred.\n *\n * @param {Code} code\n * Code.\n * @returns {boolean}\n * Whether it matches.\n */\nexport function markdownSpace(code) {\n return code === -2 || code === -1 || code === 32\n}\n\n// Size note: removing ASCII from the regex and using `asciiPunctuation` here\n// In fact adds to the bundle size.\n/**\n * Check whether the character code represents Unicode punctuation.\n *\n * A **Unicode punctuation** is a character in the Unicode `Pc` (Punctuation,\n * Connector), `Pd` (Punctuation, Dash), `Pe` (Punctuation, Close), `Pf`\n * (Punctuation, Final quote), `Pi` (Punctuation, Initial quote), `Po`\n * (Punctuation, Other), or `Ps` (Punctuation, Open) categories, or an ASCII\n * punctuation (see `asciiPunctuation`).\n *\n * See:\n * **\\[UNICODE]**:\n * [The Unicode Standard](https://www.unicode.org/versions/).\n * Unicode Consortium.\n *\n * @param code\n * Code.\n * @returns\n * Whether it matches.\n */\nexport const unicodePunctuation = regexCheck(unicodePunctuationRegex)\n\n/**\n * Check whether the character code represents Unicode whitespace.\n *\n * Note that this does handle micromark specific markdown whitespace characters.\n * See `markdownLineEndingOrSpace` to check that.\n *\n * A **Unicode whitespace** is a character in the Unicode `Zs` (Separator,\n * Space) category, or U+0009 CHARACTER TABULATION (HT), U+000A LINE FEED (LF),\n * U+000C (FF), or U+000D CARRIAGE RETURN (CR) (**\\[UNICODE]**).\n *\n * See:\n * **\\[UNICODE]**:\n * [The Unicode Standard](https://www.unicode.org/versions/).\n * Unicode Consortium.\n *\n * @param code\n * Code.\n * @returns\n * Whether it matches.\n */\nexport const unicodeWhitespace = regexCheck(/\\s/)\n\n/**\n * Create a code check from a regex.\n *\n * @param {RegExp} regex\n * @returns {(code: Code) => boolean}\n */\nfunction regexCheck(regex) {\n return check\n\n /**\n * Check whether a code matches the bound regex.\n *\n * @param {Code} code\n * Character code.\n * @returns {boolean}\n * Whether the character code matches the bound regex.\n */\n function check(code) {\n return code !== null && regex.test(String.fromCharCode(code))\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Effects} Effects\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenType} TokenType\n */\n\nimport {markdownSpace} from 'micromark-util-character'\n\n// To do: implement `spaceOrTab`, `spaceOrTabMinMax`, `spaceOrTabWithOptions`.\n\n/**\n * Parse spaces and tabs.\n *\n * There is no `nok` parameter:\n *\n * * spaces in markdown are often optional, in which case this factory can be\n * used and `ok` will be switched to whether spaces were found or not\n * * one line ending or space can be detected with `markdownSpace(code)` right\n * before using `factorySpace`\n *\n * ###### Examples\n *\n * Where `␉` represents a tab (plus how much it expands) and `␠` represents a\n * single space.\n *\n * ```markdown\n * ␉\n * ␠␠␠␠\n * ␉␠\n * ```\n *\n * @param {Effects} effects\n * Context.\n * @param {State} ok\n * State switched to when successful.\n * @param {TokenType} type\n * Type (`' \\t'`).\n * @param {number | undefined} [max=Infinity]\n * Max (exclusive).\n * @returns\n * Start state.\n */\nexport function factorySpace(effects, ok, type, max) {\n const limit = max ? max - 1 : Number.POSITIVE_INFINITY\n let size = 0\n return start\n\n /** @type {State} */\n function start(code) {\n if (markdownSpace(code)) {\n effects.enter(type)\n return prefix(code)\n }\n return ok(code)\n }\n\n /** @type {State} */\n function prefix(code) {\n if (markdownSpace(code) && size++ < limit) {\n effects.consume(code)\n return prefix\n }\n effects.exit(type)\n return ok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').InitialConstruct} InitialConstruct\n * @typedef {import('micromark-util-types').Initializer} Initializer\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').Token} Token\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n */\n\nimport {factorySpace} from 'micromark-factory-space'\nimport {markdownLineEnding} from 'micromark-util-character'\n/** @type {InitialConstruct} */\nexport const content = {\n tokenize: initializeContent\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Initializer}\n */\nfunction initializeContent(effects) {\n const contentStart = effects.attempt(\n this.parser.constructs.contentInitial,\n afterContentStartConstruct,\n paragraphInitial\n )\n /** @type {Token} */\n let previous\n return contentStart\n\n /** @type {State} */\n function afterContentStartConstruct(code) {\n if (code === null) {\n effects.consume(code)\n return\n }\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return factorySpace(effects, contentStart, 'linePrefix')\n }\n\n /** @type {State} */\n function paragraphInitial(code) {\n effects.enter('paragraph')\n return lineStart(code)\n }\n\n /** @type {State} */\n function lineStart(code) {\n const token = effects.enter('chunkText', {\n contentType: 'text',\n previous\n })\n if (previous) {\n previous.next = token\n }\n previous = token\n return data(code)\n }\n\n /** @type {State} */\n function data(code) {\n if (code === null) {\n effects.exit('chunkText')\n effects.exit('paragraph')\n effects.consume(code)\n return\n }\n if (markdownLineEnding(code)) {\n effects.consume(code)\n effects.exit('chunkText')\n return lineStart\n }\n\n // Data.\n effects.consume(code)\n return data\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').ContainerState} ContainerState\n * @typedef {import('micromark-util-types').InitialConstruct} InitialConstruct\n * @typedef {import('micromark-util-types').Initializer} Initializer\n * @typedef {import('micromark-util-types').Point} Point\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').Token} Token\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\n/**\n * @typedef {[Construct, ContainerState]} StackItem\n */\n\nimport {factorySpace} from 'micromark-factory-space'\nimport {markdownLineEnding} from 'micromark-util-character'\nimport {splice} from 'micromark-util-chunked'\n/** @type {InitialConstruct} */\nexport const document = {\n tokenize: initializeDocument\n}\n\n/** @type {Construct} */\nconst containerConstruct = {\n tokenize: tokenizeContainer\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Initializer}\n */\nfunction initializeDocument(effects) {\n const self = this\n /** @type {Array} */\n const stack = []\n let continued = 0\n /** @type {TokenizeContext | undefined} */\n let childFlow\n /** @type {Token | undefined} */\n let childToken\n /** @type {number} */\n let lineStartOffset\n return start\n\n /** @type {State} */\n function start(code) {\n // First we iterate through the open blocks, starting with the root\n // document, and descending through last children down to the last open\n // block.\n // Each block imposes a condition that the line must satisfy if the block is\n // to remain open.\n // For example, a block quote requires a `>` character.\n // A paragraph requires a non-blank line.\n // In this phase we may match all or just some of the open blocks.\n // But we cannot close unmatched blocks yet, because we may have a lazy\n // continuation line.\n if (continued < stack.length) {\n const item = stack[continued]\n self.containerState = item[1]\n return effects.attempt(\n item[0].continuation,\n documentContinue,\n checkNewContainers\n )(code)\n }\n\n // Done.\n return checkNewContainers(code)\n }\n\n /** @type {State} */\n function documentContinue(code) {\n continued++\n\n // Note: this field is called `_closeFlow` but it also closes containers.\n // Perhaps a good idea to rename it but it’s already used in the wild by\n // extensions.\n if (self.containerState._closeFlow) {\n self.containerState._closeFlow = undefined\n if (childFlow) {\n closeFlow()\n }\n\n // Note: this algorithm for moving events around is similar to the\n // algorithm when dealing with lazy lines in `writeToChild`.\n const indexBeforeExits = self.events.length\n let indexBeforeFlow = indexBeforeExits\n /** @type {Point | undefined} */\n let point\n\n // Find the flow chunk.\n while (indexBeforeFlow--) {\n if (\n self.events[indexBeforeFlow][0] === 'exit' &&\n self.events[indexBeforeFlow][1].type === 'chunkFlow'\n ) {\n point = self.events[indexBeforeFlow][1].end\n break\n }\n }\n exitContainers(continued)\n\n // Fix positions.\n let index = indexBeforeExits\n while (index < self.events.length) {\n self.events[index][1].end = Object.assign({}, point)\n index++\n }\n\n // Inject the exits earlier (they’re still also at the end).\n splice(\n self.events,\n indexBeforeFlow + 1,\n 0,\n self.events.slice(indexBeforeExits)\n )\n\n // Discard the duplicate exits.\n self.events.length = index\n return checkNewContainers(code)\n }\n return start(code)\n }\n\n /** @type {State} */\n function checkNewContainers(code) {\n // Next, after consuming the continuation markers for existing blocks, we\n // look for new block starts (e.g. `>` for a block quote).\n // If we encounter a new block start, we close any blocks unmatched in\n // step 1 before creating the new block as a child of the last matched\n // block.\n if (continued === stack.length) {\n // No need to `check` whether there’s a container, of `exitContainers`\n // would be moot.\n // We can instead immediately `attempt` to parse one.\n if (!childFlow) {\n return documentContinued(code)\n }\n\n // If we have concrete content, such as block HTML or fenced code,\n // we can’t have containers “pierce” into them, so we can immediately\n // start.\n if (childFlow.currentConstruct && childFlow.currentConstruct.concrete) {\n return flowStart(code)\n }\n\n // If we do have flow, it could still be a blank line,\n // but we’d be interrupting it w/ a new container if there’s a current\n // construct.\n // To do: next major: remove `_gfmTableDynamicInterruptHack` (no longer\n // needed in micromark-extension-gfm-table@1.0.6).\n self.interrupt = Boolean(\n childFlow.currentConstruct && !childFlow._gfmTableDynamicInterruptHack\n )\n }\n\n // Check if there is a new container.\n self.containerState = {}\n return effects.check(\n containerConstruct,\n thereIsANewContainer,\n thereIsNoNewContainer\n )(code)\n }\n\n /** @type {State} */\n function thereIsANewContainer(code) {\n if (childFlow) closeFlow()\n exitContainers(continued)\n return documentContinued(code)\n }\n\n /** @type {State} */\n function thereIsNoNewContainer(code) {\n self.parser.lazy[self.now().line] = continued !== stack.length\n lineStartOffset = self.now().offset\n return flowStart(code)\n }\n\n /** @type {State} */\n function documentContinued(code) {\n // Try new containers.\n self.containerState = {}\n return effects.attempt(\n containerConstruct,\n containerContinue,\n flowStart\n )(code)\n }\n\n /** @type {State} */\n function containerContinue(code) {\n continued++\n stack.push([self.currentConstruct, self.containerState])\n // Try another.\n return documentContinued(code)\n }\n\n /** @type {State} */\n function flowStart(code) {\n if (code === null) {\n if (childFlow) closeFlow()\n exitContainers(0)\n effects.consume(code)\n return\n }\n childFlow = childFlow || self.parser.flow(self.now())\n effects.enter('chunkFlow', {\n contentType: 'flow',\n previous: childToken,\n _tokenizer: childFlow\n })\n return flowContinue(code)\n }\n\n /** @type {State} */\n function flowContinue(code) {\n if (code === null) {\n writeToChild(effects.exit('chunkFlow'), true)\n exitContainers(0)\n effects.consume(code)\n return\n }\n if (markdownLineEnding(code)) {\n effects.consume(code)\n writeToChild(effects.exit('chunkFlow'))\n // Get ready for the next line.\n continued = 0\n self.interrupt = undefined\n return start\n }\n effects.consume(code)\n return flowContinue\n }\n\n /**\n * @param {Token} token\n * @param {boolean | undefined} [eof]\n * @returns {void}\n */\n function writeToChild(token, eof) {\n const stream = self.sliceStream(token)\n if (eof) stream.push(null)\n token.previous = childToken\n if (childToken) childToken.next = token\n childToken = token\n childFlow.defineSkip(token.start)\n childFlow.write(stream)\n\n // Alright, so we just added a lazy line:\n //\n // ```markdown\n // > a\n // b.\n //\n // Or:\n //\n // > ~~~c\n // d\n //\n // Or:\n //\n // > | e |\n // f\n // ```\n //\n // The construct in the second example (fenced code) does not accept lazy\n // lines, so it marked itself as done at the end of its first line, and\n // then the content construct parses `d`.\n // Most constructs in markdown match on the first line: if the first line\n // forms a construct, a non-lazy line can’t “unmake” it.\n //\n // The construct in the third example is potentially a GFM table, and\n // those are *weird*.\n // It *could* be a table, from the first line, if the following line\n // matches a condition.\n // In this case, that second line is lazy, which “unmakes” the first line\n // and turns the whole into one content block.\n //\n // We’ve now parsed the non-lazy and the lazy line, and can figure out\n // whether the lazy line started a new flow block.\n // If it did, we exit the current containers between the two flow blocks.\n if (self.parser.lazy[token.start.line]) {\n let index = childFlow.events.length\n while (index--) {\n if (\n // The token starts before the line ending…\n childFlow.events[index][1].start.offset < lineStartOffset &&\n // …and either is not ended yet…\n (!childFlow.events[index][1].end ||\n // …or ends after it.\n childFlow.events[index][1].end.offset > lineStartOffset)\n ) {\n // Exit: there’s still something open, which means it’s a lazy line\n // part of something.\n return\n }\n }\n\n // Note: this algorithm for moving events around is similar to the\n // algorithm when closing flow in `documentContinue`.\n const indexBeforeExits = self.events.length\n let indexBeforeFlow = indexBeforeExits\n /** @type {boolean | undefined} */\n let seen\n /** @type {Point | undefined} */\n let point\n\n // Find the previous chunk (the one before the lazy line).\n while (indexBeforeFlow--) {\n if (\n self.events[indexBeforeFlow][0] === 'exit' &&\n self.events[indexBeforeFlow][1].type === 'chunkFlow'\n ) {\n if (seen) {\n point = self.events[indexBeforeFlow][1].end\n break\n }\n seen = true\n }\n }\n exitContainers(continued)\n\n // Fix positions.\n index = indexBeforeExits\n while (index < self.events.length) {\n self.events[index][1].end = Object.assign({}, point)\n index++\n }\n\n // Inject the exits earlier (they’re still also at the end).\n splice(\n self.events,\n indexBeforeFlow + 1,\n 0,\n self.events.slice(indexBeforeExits)\n )\n\n // Discard the duplicate exits.\n self.events.length = index\n }\n }\n\n /**\n * @param {number} size\n * @returns {void}\n */\n function exitContainers(size) {\n let index = stack.length\n\n // Exit open containers.\n while (index-- > size) {\n const entry = stack[index]\n self.containerState = entry[1]\n entry[0].exit.call(self, effects)\n }\n stack.length = size\n }\n function closeFlow() {\n childFlow.write([null])\n childToken = undefined\n childFlow = undefined\n self.containerState._closeFlow = undefined\n }\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeContainer(effects, ok, nok) {\n // Always populated by defaults.\n\n return factorySpace(\n effects,\n effects.attempt(this.parser.constructs.document, ok, nok),\n 'linePrefix',\n this.parser.constructs.disable.null.includes('codeIndented') ? undefined : 4\n )\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {factorySpace} from 'micromark-factory-space'\nimport {markdownLineEnding, markdownSpace} from 'micromark-util-character'\n/** @type {Construct} */\nexport const blankLine = {\n tokenize: tokenizeBlankLine,\n partial: true\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeBlankLine(effects, ok, nok) {\n return start\n\n /**\n * Start of blank line.\n *\n * > 👉 **Note**: `␠` represents a space character.\n *\n * ```markdown\n * > | ␠␠␊\n * ^\n * > | ␊\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n return markdownSpace(code)\n ? factorySpace(effects, after, 'linePrefix')(code)\n : after(code)\n }\n\n /**\n * At eof/eol, after optional whitespace.\n *\n * > 👉 **Note**: `␠` represents a space character.\n *\n * ```markdown\n * > | ␠␠␊\n * ^\n * > | ␊\n * ^\n * ```\n *\n * @type {State}\n */\n function after(code) {\n return code === null || markdownLineEnding(code) ? ok(code) : nok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Chunk} Chunk\n * @typedef {import('micromark-util-types').Event} Event\n * @typedef {import('micromark-util-types').Token} Token\n */\n\nimport {splice} from 'micromark-util-chunked'\n/**\n * Tokenize subcontent.\n *\n * @param {Array} events\n * List of events.\n * @returns {boolean}\n * Whether subtokens were found.\n */\nexport function subtokenize(events) {\n /** @type {Record} */\n const jumps = {}\n let index = -1\n /** @type {Event} */\n let event\n /** @type {number | undefined} */\n let lineIndex\n /** @type {number} */\n let otherIndex\n /** @type {Event} */\n let otherEvent\n /** @type {Array} */\n let parameters\n /** @type {Array} */\n let subevents\n /** @type {boolean | undefined} */\n let more\n while (++index < events.length) {\n while (index in jumps) {\n index = jumps[index]\n }\n event = events[index]\n\n // Add a hook for the GFM tasklist extension, which needs to know if text\n // is in the first content of a list item.\n if (\n index &&\n event[1].type === 'chunkFlow' &&\n events[index - 1][1].type === 'listItemPrefix'\n ) {\n subevents = event[1]._tokenizer.events\n otherIndex = 0\n if (\n otherIndex < subevents.length &&\n subevents[otherIndex][1].type === 'lineEndingBlank'\n ) {\n otherIndex += 2\n }\n if (\n otherIndex < subevents.length &&\n subevents[otherIndex][1].type === 'content'\n ) {\n while (++otherIndex < subevents.length) {\n if (subevents[otherIndex][1].type === 'content') {\n break\n }\n if (subevents[otherIndex][1].type === 'chunkText') {\n subevents[otherIndex][1]._isInFirstContentOfListItem = true\n otherIndex++\n }\n }\n }\n }\n\n // Enter.\n if (event[0] === 'enter') {\n if (event[1].contentType) {\n Object.assign(jumps, subcontent(events, index))\n index = jumps[index]\n more = true\n }\n }\n // Exit.\n else if (event[1]._container) {\n otherIndex = index\n lineIndex = undefined\n while (otherIndex--) {\n otherEvent = events[otherIndex]\n if (\n otherEvent[1].type === 'lineEnding' ||\n otherEvent[1].type === 'lineEndingBlank'\n ) {\n if (otherEvent[0] === 'enter') {\n if (lineIndex) {\n events[lineIndex][1].type = 'lineEndingBlank'\n }\n otherEvent[1].type = 'lineEnding'\n lineIndex = otherIndex\n }\n } else {\n break\n }\n }\n if (lineIndex) {\n // Fix position.\n event[1].end = Object.assign({}, events[lineIndex][1].start)\n\n // Switch container exit w/ line endings.\n parameters = events.slice(lineIndex, index)\n parameters.unshift(event)\n splice(events, lineIndex, index - lineIndex + 1, parameters)\n }\n }\n }\n return !more\n}\n\n/**\n * Tokenize embedded tokens.\n *\n * @param {Array} events\n * @param {number} eventIndex\n * @returns {Record}\n */\nfunction subcontent(events, eventIndex) {\n const token = events[eventIndex][1]\n const context = events[eventIndex][2]\n let startPosition = eventIndex - 1\n /** @type {Array} */\n const startPositions = []\n const tokenizer =\n token._tokenizer || context.parser[token.contentType](token.start)\n const childEvents = tokenizer.events\n /** @type {Array<[number, number]>} */\n const jumps = []\n /** @type {Record} */\n const gaps = {}\n /** @type {Array} */\n let stream\n /** @type {Token | undefined} */\n let previous\n let index = -1\n /** @type {Token | undefined} */\n let current = token\n let adjust = 0\n let start = 0\n const breaks = [start]\n\n // Loop forward through the linked tokens to pass them in order to the\n // subtokenizer.\n while (current) {\n // Find the position of the event for this token.\n while (events[++startPosition][1] !== current) {\n // Empty.\n }\n startPositions.push(startPosition)\n if (!current._tokenizer) {\n stream = context.sliceStream(current)\n if (!current.next) {\n stream.push(null)\n }\n if (previous) {\n tokenizer.defineSkip(current.start)\n }\n if (current._isInFirstContentOfListItem) {\n tokenizer._gfmTasklistFirstContentOfListItem = true\n }\n tokenizer.write(stream)\n if (current._isInFirstContentOfListItem) {\n tokenizer._gfmTasklistFirstContentOfListItem = undefined\n }\n }\n\n // Unravel the next token.\n previous = current\n current = current.next\n }\n\n // Now, loop back through all events (and linked tokens), to figure out which\n // parts belong where.\n current = token\n while (++index < childEvents.length) {\n if (\n // Find a void token that includes a break.\n childEvents[index][0] === 'exit' &&\n childEvents[index - 1][0] === 'enter' &&\n childEvents[index][1].type === childEvents[index - 1][1].type &&\n childEvents[index][1].start.line !== childEvents[index][1].end.line\n ) {\n start = index + 1\n breaks.push(start)\n // Help GC.\n current._tokenizer = undefined\n current.previous = undefined\n current = current.next\n }\n }\n\n // Help GC.\n tokenizer.events = []\n\n // If there’s one more token (which is the cases for lines that end in an\n // EOF), that’s perfect: the last point we found starts it.\n // If there isn’t then make sure any remaining content is added to it.\n if (current) {\n // Help GC.\n current._tokenizer = undefined\n current.previous = undefined\n } else {\n breaks.pop()\n }\n\n // Now splice the events from the subtokenizer into the current events,\n // moving back to front so that splice indices aren’t affected.\n index = breaks.length\n while (index--) {\n const slice = childEvents.slice(breaks[index], breaks[index + 1])\n const start = startPositions.pop()\n jumps.unshift([start, start + slice.length - 1])\n splice(events, start, 2, slice)\n }\n index = -1\n while (++index < jumps.length) {\n gaps[adjust + jumps[index][0]] = adjust + jumps[index][1]\n adjust += jumps[index][1] - jumps[index][0] - 1\n }\n return gaps\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Resolver} Resolver\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').Token} Token\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {factorySpace} from 'micromark-factory-space'\nimport {markdownLineEnding} from 'micromark-util-character'\nimport {subtokenize} from 'micromark-util-subtokenize'\n/**\n * No name because it must not be turned off.\n * @type {Construct}\n */\nexport const content = {\n tokenize: tokenizeContent,\n resolve: resolveContent\n}\n\n/** @type {Construct} */\nconst continuationConstruct = {\n tokenize: tokenizeContinuation,\n partial: true\n}\n\n/**\n * Content is transparent: it’s parsed right now. That way, definitions are also\n * parsed right now: before text in paragraphs (specifically, media) are parsed.\n *\n * @type {Resolver}\n */\nfunction resolveContent(events) {\n subtokenize(events)\n return events\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeContent(effects, ok) {\n /** @type {Token | undefined} */\n let previous\n return chunkStart\n\n /**\n * Before a content chunk.\n *\n * ```markdown\n * > | abc\n * ^\n * ```\n *\n * @type {State}\n */\n function chunkStart(code) {\n effects.enter('content')\n previous = effects.enter('chunkContent', {\n contentType: 'content'\n })\n return chunkInside(code)\n }\n\n /**\n * In a content chunk.\n *\n * ```markdown\n * > | abc\n * ^^^\n * ```\n *\n * @type {State}\n */\n function chunkInside(code) {\n if (code === null) {\n return contentEnd(code)\n }\n\n // To do: in `markdown-rs`, each line is parsed on its own, and everything\n // is stitched together resolving.\n if (markdownLineEnding(code)) {\n return effects.check(\n continuationConstruct,\n contentContinue,\n contentEnd\n )(code)\n }\n\n // Data.\n effects.consume(code)\n return chunkInside\n }\n\n /**\n *\n *\n * @type {State}\n */\n function contentEnd(code) {\n effects.exit('chunkContent')\n effects.exit('content')\n return ok(code)\n }\n\n /**\n *\n *\n * @type {State}\n */\n function contentContinue(code) {\n effects.consume(code)\n effects.exit('chunkContent')\n previous.next = effects.enter('chunkContent', {\n contentType: 'content',\n previous\n })\n previous = previous.next\n return chunkInside\n }\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeContinuation(effects, ok, nok) {\n const self = this\n return startLookahead\n\n /**\n *\n *\n * @type {State}\n */\n function startLookahead(code) {\n effects.exit('chunkContent')\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return factorySpace(effects, prefixed, 'linePrefix')\n }\n\n /**\n *\n *\n * @type {State}\n */\n function prefixed(code) {\n if (code === null || markdownLineEnding(code)) {\n return nok(code)\n }\n\n // Always populated by defaults.\n\n const tail = self.events[self.events.length - 1]\n if (\n !self.parser.constructs.disable.null.includes('codeIndented') &&\n tail &&\n tail[1].type === 'linePrefix' &&\n tail[2].sliceSerialize(tail[1], true).length >= 4\n ) {\n return ok(code)\n }\n return effects.interrupt(self.parser.constructs.flow, nok, ok)(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').InitialConstruct} InitialConstruct\n * @typedef {import('micromark-util-types').Initializer} Initializer\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n */\n\nimport {blankLine, content} from 'micromark-core-commonmark'\nimport {factorySpace} from 'micromark-factory-space'\nimport {markdownLineEnding} from 'micromark-util-character'\n/** @type {InitialConstruct} */\nexport const flow = {\n tokenize: initializeFlow\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Initializer}\n */\nfunction initializeFlow(effects) {\n const self = this\n const initial = effects.attempt(\n // Try to parse a blank line.\n blankLine,\n atBlankEnding,\n // Try to parse initial flow (essentially, only code).\n effects.attempt(\n this.parser.constructs.flowInitial,\n afterConstruct,\n factorySpace(\n effects,\n effects.attempt(\n this.parser.constructs.flow,\n afterConstruct,\n effects.attempt(content, afterConstruct)\n ),\n 'linePrefix'\n )\n )\n )\n return initial\n\n /** @type {State} */\n function atBlankEnding(code) {\n if (code === null) {\n effects.consume(code)\n return\n }\n effects.enter('lineEndingBlank')\n effects.consume(code)\n effects.exit('lineEndingBlank')\n self.currentConstruct = undefined\n return initial\n }\n\n /** @type {State} */\n function afterConstruct(code) {\n if (code === null) {\n effects.consume(code)\n return\n }\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n self.currentConstruct = undefined\n return initial\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Code} Code\n * @typedef {import('micromark-util-types').InitialConstruct} InitialConstruct\n * @typedef {import('micromark-util-types').Initializer} Initializer\n * @typedef {import('micromark-util-types').Resolver} Resolver\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n */\n\nexport const resolver = {\n resolveAll: createResolver()\n}\nexport const string = initializeFactory('string')\nexport const text = initializeFactory('text')\n\n/**\n * @param {'string' | 'text'} field\n * @returns {InitialConstruct}\n */\nfunction initializeFactory(field) {\n return {\n tokenize: initializeText,\n resolveAll: createResolver(\n field === 'text' ? resolveAllLineSuffixes : undefined\n )\n }\n\n /**\n * @this {TokenizeContext}\n * @type {Initializer}\n */\n function initializeText(effects) {\n const self = this\n const constructs = this.parser.constructs[field]\n const text = effects.attempt(constructs, start, notText)\n return start\n\n /** @type {State} */\n function start(code) {\n return atBreak(code) ? text(code) : notText(code)\n }\n\n /** @type {State} */\n function notText(code) {\n if (code === null) {\n effects.consume(code)\n return\n }\n effects.enter('data')\n effects.consume(code)\n return data\n }\n\n /** @type {State} */\n function data(code) {\n if (atBreak(code)) {\n effects.exit('data')\n return text(code)\n }\n\n // Data.\n effects.consume(code)\n return data\n }\n\n /**\n * @param {Code} code\n * @returns {boolean}\n */\n function atBreak(code) {\n if (code === null) {\n return true\n }\n const list = constructs[code]\n let index = -1\n if (list) {\n // Always populated by defaults.\n\n while (++index < list.length) {\n const item = list[index]\n if (!item.previous || item.previous.call(self, self.previous)) {\n return true\n }\n }\n }\n return false\n }\n }\n}\n\n/**\n * @param {Resolver | undefined} [extraResolver]\n * @returns {Resolver}\n */\nfunction createResolver(extraResolver) {\n return resolveAllText\n\n /** @type {Resolver} */\n function resolveAllText(events, context) {\n let index = -1\n /** @type {number | undefined} */\n let enter\n\n // A rather boring computation (to merge adjacent `data` events) which\n // improves mm performance by 29%.\n while (++index <= events.length) {\n if (enter === undefined) {\n if (events[index] && events[index][1].type === 'data') {\n enter = index\n index++\n }\n } else if (!events[index] || events[index][1].type !== 'data') {\n // Don’t do anything if there is one data token.\n if (index !== enter + 2) {\n events[enter][1].end = events[index - 1][1].end\n events.splice(enter + 2, index - enter - 2)\n index = enter + 2\n }\n enter = undefined\n }\n }\n return extraResolver ? extraResolver(events, context) : events\n }\n}\n\n/**\n * A rather ugly set of instructions which again looks at chunks in the input\n * stream.\n * The reason to do this here is that it is *much* faster to parse in reverse.\n * And that we can’t hook into `null` to split the line suffix before an EOF.\n * To do: figure out if we can make this into a clean utility, or even in core.\n * As it will be useful for GFMs literal autolink extension (and maybe even\n * tables?)\n *\n * @type {Resolver}\n */\nfunction resolveAllLineSuffixes(events, context) {\n let eventIndex = 0 // Skip first.\n\n while (++eventIndex <= events.length) {\n if (\n (eventIndex === events.length ||\n events[eventIndex][1].type === 'lineEnding') &&\n events[eventIndex - 1][1].type === 'data'\n ) {\n const data = events[eventIndex - 1][1]\n const chunks = context.sliceStream(data)\n let index = chunks.length\n let bufferIndex = -1\n let size = 0\n /** @type {boolean | undefined} */\n let tabs\n while (index--) {\n const chunk = chunks[index]\n if (typeof chunk === 'string') {\n bufferIndex = chunk.length\n while (chunk.charCodeAt(bufferIndex - 1) === 32) {\n size++\n bufferIndex--\n }\n if (bufferIndex) break\n bufferIndex = -1\n }\n // Number\n else if (chunk === -2) {\n tabs = true\n size++\n } else if (chunk === -1) {\n // Empty\n } else {\n // Replacement character, exit.\n index++\n break\n }\n }\n if (size) {\n const token = {\n type:\n eventIndex === events.length || tabs || size < 2\n ? 'lineSuffix'\n : 'hardBreakTrailing',\n start: {\n line: data.end.line,\n column: data.end.column - size,\n offset: data.end.offset - size,\n _index: data.start._index + index,\n _bufferIndex: index\n ? bufferIndex\n : data.start._bufferIndex + bufferIndex\n },\n end: Object.assign({}, data.end)\n }\n data.end = Object.assign({}, token.start)\n if (data.start.offset === data.end.offset) {\n Object.assign(data, token)\n } else {\n events.splice(\n eventIndex,\n 0,\n ['enter', token, context],\n ['exit', token, context]\n )\n eventIndex += 2\n }\n }\n eventIndex++\n }\n }\n return events\n}\n","/**\n * @typedef {import('micromark-util-types').Event} Event\n * @typedef {import('micromark-util-types').Resolver} Resolver\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n */\n\n/**\n * Call all `resolveAll`s.\n *\n * @param {Array<{resolveAll?: Resolver | undefined}>} constructs\n * List of constructs, optionally with `resolveAll`s.\n * @param {Array} events\n * List of events.\n * @param {TokenizeContext} context\n * Context used by `tokenize`.\n * @returns {Array}\n * Changed events.\n */\nexport function resolveAll(constructs, events, context) {\n /** @type {Array} */\n const called = []\n let index = -1\n\n while (++index < constructs.length) {\n const resolve = constructs[index].resolveAll\n\n if (resolve && !called.includes(resolve)) {\n events = resolve(events, context)\n called.push(resolve)\n }\n }\n\n return events\n}\n","/**\n * @typedef {import('micromark-util-types').Chunk} Chunk\n * @typedef {import('micromark-util-types').Code} Code\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').ConstructRecord} ConstructRecord\n * @typedef {import('micromark-util-types').Effects} Effects\n * @typedef {import('micromark-util-types').InitialConstruct} InitialConstruct\n * @typedef {import('micromark-util-types').ParseContext} ParseContext\n * @typedef {import('micromark-util-types').Point} Point\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').Token} Token\n * @typedef {import('micromark-util-types').TokenType} TokenType\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n */\n\n/**\n * @callback Restore\n * @returns {void}\n *\n * @typedef Info\n * @property {Restore} restore\n * @property {number} from\n *\n * @callback ReturnHandle\n * Handle a successful run.\n * @param {Construct} construct\n * @param {Info} info\n * @returns {void}\n */\n\nimport {markdownLineEnding} from 'micromark-util-character'\nimport {push, splice} from 'micromark-util-chunked'\nimport {resolveAll} from 'micromark-util-resolve-all'\n/**\n * Create a tokenizer.\n * Tokenizers deal with one type of data (e.g., containers, flow, text).\n * The parser is the object dealing with it all.\n * `initialize` works like other constructs, except that only its `tokenize`\n * function is used, in which case it doesn’t receive an `ok` or `nok`.\n * `from` can be given to set the point before the first character, although\n * when further lines are indented, they must be set with `defineSkip`.\n *\n * @param {ParseContext} parser\n * @param {InitialConstruct} initialize\n * @param {Omit | undefined} [from]\n * @returns {TokenizeContext}\n */\nexport function createTokenizer(parser, initialize, from) {\n /** @type {Point} */\n let point = Object.assign(\n from\n ? Object.assign({}, from)\n : {\n line: 1,\n column: 1,\n offset: 0\n },\n {\n _index: 0,\n _bufferIndex: -1\n }\n )\n /** @type {Record} */\n const columnStart = {}\n /** @type {Array} */\n const resolveAllConstructs = []\n /** @type {Array} */\n let chunks = []\n /** @type {Array} */\n let stack = []\n /** @type {boolean | undefined} */\n let consumed = true\n\n /**\n * Tools used for tokenizing.\n *\n * @type {Effects}\n */\n const effects = {\n consume,\n enter,\n exit,\n attempt: constructFactory(onsuccessfulconstruct),\n check: constructFactory(onsuccessfulcheck),\n interrupt: constructFactory(onsuccessfulcheck, {\n interrupt: true\n })\n }\n\n /**\n * State and tools for resolving and serializing.\n *\n * @type {TokenizeContext}\n */\n const context = {\n previous: null,\n code: null,\n containerState: {},\n events: [],\n parser,\n sliceStream,\n sliceSerialize,\n now,\n defineSkip,\n write\n }\n\n /**\n * The state function.\n *\n * @type {State | void}\n */\n let state = initialize.tokenize.call(context, effects)\n\n /**\n * Track which character we expect to be consumed, to catch bugs.\n *\n * @type {Code}\n */\n let expectedCode\n if (initialize.resolveAll) {\n resolveAllConstructs.push(initialize)\n }\n return context\n\n /** @type {TokenizeContext['write']} */\n function write(slice) {\n chunks = push(chunks, slice)\n main()\n\n // Exit if we’re not done, resolve might change stuff.\n if (chunks[chunks.length - 1] !== null) {\n return []\n }\n addResult(initialize, 0)\n\n // Otherwise, resolve, and exit.\n context.events = resolveAll(resolveAllConstructs, context.events, context)\n return context.events\n }\n\n //\n // Tools.\n //\n\n /** @type {TokenizeContext['sliceSerialize']} */\n function sliceSerialize(token, expandTabs) {\n return serializeChunks(sliceStream(token), expandTabs)\n }\n\n /** @type {TokenizeContext['sliceStream']} */\n function sliceStream(token) {\n return sliceChunks(chunks, token)\n }\n\n /** @type {TokenizeContext['now']} */\n function now() {\n // This is a hot path, so we clone manually instead of `Object.assign({}, point)`\n const {line, column, offset, _index, _bufferIndex} = point\n return {\n line,\n column,\n offset,\n _index,\n _bufferIndex\n }\n }\n\n /** @type {TokenizeContext['defineSkip']} */\n function defineSkip(value) {\n columnStart[value.line] = value.column\n accountForPotentialSkip()\n }\n\n //\n // State management.\n //\n\n /**\n * Main loop (note that `_index` and `_bufferIndex` in `point` are modified by\n * `consume`).\n * Here is where we walk through the chunks, which either include strings of\n * several characters, or numerical character codes.\n * The reason to do this in a loop instead of a call is so the stack can\n * drain.\n *\n * @returns {void}\n */\n function main() {\n /** @type {number} */\n let chunkIndex\n while (point._index < chunks.length) {\n const chunk = chunks[point._index]\n\n // If we’re in a buffer chunk, loop through it.\n if (typeof chunk === 'string') {\n chunkIndex = point._index\n if (point._bufferIndex < 0) {\n point._bufferIndex = 0\n }\n while (\n point._index === chunkIndex &&\n point._bufferIndex < chunk.length\n ) {\n go(chunk.charCodeAt(point._bufferIndex))\n }\n } else {\n go(chunk)\n }\n }\n }\n\n /**\n * Deal with one code.\n *\n * @param {Code} code\n * @returns {void}\n */\n function go(code) {\n consumed = undefined\n expectedCode = code\n state = state(code)\n }\n\n /** @type {Effects['consume']} */\n function consume(code) {\n if (markdownLineEnding(code)) {\n point.line++\n point.column = 1\n point.offset += code === -3 ? 2 : 1\n accountForPotentialSkip()\n } else if (code !== -1) {\n point.column++\n point.offset++\n }\n\n // Not in a string chunk.\n if (point._bufferIndex < 0) {\n point._index++\n } else {\n point._bufferIndex++\n\n // At end of string chunk.\n // @ts-expect-error Points w/ non-negative `_bufferIndex` reference\n // strings.\n if (point._bufferIndex === chunks[point._index].length) {\n point._bufferIndex = -1\n point._index++\n }\n }\n\n // Expose the previous character.\n context.previous = code\n\n // Mark as consumed.\n consumed = true\n }\n\n /** @type {Effects['enter']} */\n function enter(type, fields) {\n /** @type {Token} */\n // @ts-expect-error Patch instead of assign required fields to help GC.\n const token = fields || {}\n token.type = type\n token.start = now()\n context.events.push(['enter', token, context])\n stack.push(token)\n return token\n }\n\n /** @type {Effects['exit']} */\n function exit(type) {\n const token = stack.pop()\n token.end = now()\n context.events.push(['exit', token, context])\n return token\n }\n\n /**\n * Use results.\n *\n * @type {ReturnHandle}\n */\n function onsuccessfulconstruct(construct, info) {\n addResult(construct, info.from)\n }\n\n /**\n * Discard results.\n *\n * @type {ReturnHandle}\n */\n function onsuccessfulcheck(_, info) {\n info.restore()\n }\n\n /**\n * Factory to attempt/check/interrupt.\n *\n * @param {ReturnHandle} onreturn\n * @param {{interrupt?: boolean | undefined} | undefined} [fields]\n */\n function constructFactory(onreturn, fields) {\n return hook\n\n /**\n * Handle either an object mapping codes to constructs, a list of\n * constructs, or a single construct.\n *\n * @param {Array | Construct | ConstructRecord} constructs\n * @param {State} returnState\n * @param {State | undefined} [bogusState]\n * @returns {State}\n */\n function hook(constructs, returnState, bogusState) {\n /** @type {Array} */\n let listOfConstructs\n /** @type {number} */\n let constructIndex\n /** @type {Construct} */\n let currentConstruct\n /** @type {Info} */\n let info\n return Array.isArray(constructs) /* c8 ignore next 1 */\n ? handleListOfConstructs(constructs)\n : 'tokenize' in constructs\n ? // @ts-expect-error Looks like a construct.\n handleListOfConstructs([constructs])\n : handleMapOfConstructs(constructs)\n\n /**\n * Handle a list of construct.\n *\n * @param {ConstructRecord} map\n * @returns {State}\n */\n function handleMapOfConstructs(map) {\n return start\n\n /** @type {State} */\n function start(code) {\n const def = code !== null && map[code]\n const all = code !== null && map.null\n const list = [\n // To do: add more extension tests.\n /* c8 ignore next 2 */\n ...(Array.isArray(def) ? def : def ? [def] : []),\n ...(Array.isArray(all) ? all : all ? [all] : [])\n ]\n return handleListOfConstructs(list)(code)\n }\n }\n\n /**\n * Handle a list of construct.\n *\n * @param {Array} list\n * @returns {State}\n */\n function handleListOfConstructs(list) {\n listOfConstructs = list\n constructIndex = 0\n if (list.length === 0) {\n return bogusState\n }\n return handleConstruct(list[constructIndex])\n }\n\n /**\n * Handle a single construct.\n *\n * @param {Construct} construct\n * @returns {State}\n */\n function handleConstruct(construct) {\n return start\n\n /** @type {State} */\n function start(code) {\n // To do: not needed to store if there is no bogus state, probably?\n // Currently doesn’t work because `inspect` in document does a check\n // w/o a bogus, which doesn’t make sense. But it does seem to help perf\n // by not storing.\n info = store()\n currentConstruct = construct\n if (!construct.partial) {\n context.currentConstruct = construct\n }\n\n // Always populated by defaults.\n\n if (\n construct.name &&\n context.parser.constructs.disable.null.includes(construct.name)\n ) {\n return nok(code)\n }\n return construct.tokenize.call(\n // If we do have fields, create an object w/ `context` as its\n // prototype.\n // This allows a “live binding”, which is needed for `interrupt`.\n fields ? Object.assign(Object.create(context), fields) : context,\n effects,\n ok,\n nok\n )(code)\n }\n }\n\n /** @type {State} */\n function ok(code) {\n consumed = true\n onreturn(currentConstruct, info)\n return returnState\n }\n\n /** @type {State} */\n function nok(code) {\n consumed = true\n info.restore()\n if (++constructIndex < listOfConstructs.length) {\n return handleConstruct(listOfConstructs[constructIndex])\n }\n return bogusState\n }\n }\n }\n\n /**\n * @param {Construct} construct\n * @param {number} from\n * @returns {void}\n */\n function addResult(construct, from) {\n if (construct.resolveAll && !resolveAllConstructs.includes(construct)) {\n resolveAllConstructs.push(construct)\n }\n if (construct.resolve) {\n splice(\n context.events,\n from,\n context.events.length - from,\n construct.resolve(context.events.slice(from), context)\n )\n }\n if (construct.resolveTo) {\n context.events = construct.resolveTo(context.events, context)\n }\n }\n\n /**\n * Store state.\n *\n * @returns {Info}\n */\n function store() {\n const startPoint = now()\n const startPrevious = context.previous\n const startCurrentConstruct = context.currentConstruct\n const startEventsIndex = context.events.length\n const startStack = Array.from(stack)\n return {\n restore,\n from: startEventsIndex\n }\n\n /**\n * Restore state.\n *\n * @returns {void}\n */\n function restore() {\n point = startPoint\n context.previous = startPrevious\n context.currentConstruct = startCurrentConstruct\n context.events.length = startEventsIndex\n stack = startStack\n accountForPotentialSkip()\n }\n }\n\n /**\n * Move the current point a bit forward in the line when it’s on a column\n * skip.\n *\n * @returns {void}\n */\n function accountForPotentialSkip() {\n if (point.line in columnStart && point.column < 2) {\n point.column = columnStart[point.line]\n point.offset += columnStart[point.line] - 1\n }\n }\n}\n\n/**\n * Get the chunks from a slice of chunks in the range of a token.\n *\n * @param {Array} chunks\n * @param {Pick} token\n * @returns {Array}\n */\nfunction sliceChunks(chunks, token) {\n const startIndex = token.start._index\n const startBufferIndex = token.start._bufferIndex\n const endIndex = token.end._index\n const endBufferIndex = token.end._bufferIndex\n /** @type {Array} */\n let view\n if (startIndex === endIndex) {\n // @ts-expect-error `_bufferIndex` is used on string chunks.\n view = [chunks[startIndex].slice(startBufferIndex, endBufferIndex)]\n } else {\n view = chunks.slice(startIndex, endIndex)\n if (startBufferIndex > -1) {\n const head = view[0]\n if (typeof head === 'string') {\n view[0] = head.slice(startBufferIndex)\n } else {\n view.shift()\n }\n }\n if (endBufferIndex > 0) {\n // @ts-expect-error `_bufferIndex` is used on string chunks.\n view.push(chunks[endIndex].slice(0, endBufferIndex))\n }\n }\n return view\n}\n\n/**\n * Get the string value of a slice of chunks.\n *\n * @param {Array} chunks\n * @param {boolean | undefined} [expandTabs=false]\n * @returns {string}\n */\nfunction serializeChunks(chunks, expandTabs) {\n let index = -1\n /** @type {Array} */\n const result = []\n /** @type {boolean | undefined} */\n let atTab\n while (++index < chunks.length) {\n const chunk = chunks[index]\n /** @type {string} */\n let value\n if (typeof chunk === 'string') {\n value = chunk\n } else\n switch (chunk) {\n case -5: {\n value = '\\r'\n break\n }\n case -4: {\n value = '\\n'\n break\n }\n case -3: {\n value = '\\r' + '\\n'\n break\n }\n case -2: {\n value = expandTabs ? ' ' : '\\t'\n break\n }\n case -1: {\n if (!expandTabs && atTab) continue\n value = ' '\n break\n }\n default: {\n // Currently only replacement character.\n value = String.fromCharCode(chunk)\n }\n }\n atTab = chunk === -2\n result.push(value)\n }\n return result.join('')\n}\n","/**\n * @typedef {import('micromark-util-types').Code} Code\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {factorySpace} from 'micromark-factory-space'\nimport {markdownLineEnding, markdownSpace} from 'micromark-util-character'\n/** @type {Construct} */\nexport const thematicBreak = {\n name: 'thematicBreak',\n tokenize: tokenizeThematicBreak\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeThematicBreak(effects, ok, nok) {\n let size = 0\n /** @type {NonNullable} */\n let marker\n return start\n\n /**\n * Start of thematic break.\n *\n * ```markdown\n * > | ***\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n effects.enter('thematicBreak')\n // To do: parse indent like `markdown-rs`.\n return before(code)\n }\n\n /**\n * After optional whitespace, at marker.\n *\n * ```markdown\n * > | ***\n * ^\n * ```\n *\n * @type {State}\n */\n function before(code) {\n marker = code\n return atBreak(code)\n }\n\n /**\n * After something, before something else.\n *\n * ```markdown\n * > | ***\n * ^\n * ```\n *\n * @type {State}\n */\n function atBreak(code) {\n if (code === marker) {\n effects.enter('thematicBreakSequence')\n return sequence(code)\n }\n if (size >= 3 && (code === null || markdownLineEnding(code))) {\n effects.exit('thematicBreak')\n return ok(code)\n }\n return nok(code)\n }\n\n /**\n * In sequence.\n *\n * ```markdown\n * > | ***\n * ^\n * ```\n *\n * @type {State}\n */\n function sequence(code) {\n if (code === marker) {\n effects.consume(code)\n size++\n return sequence\n }\n effects.exit('thematicBreakSequence')\n return markdownSpace(code)\n ? factorySpace(effects, atBreak, 'whitespace')(code)\n : atBreak(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Code} Code\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').ContainerState} ContainerState\n * @typedef {import('micromark-util-types').Exiter} Exiter\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {factorySpace} from 'micromark-factory-space'\nimport {asciiDigit, markdownSpace} from 'micromark-util-character'\nimport {blankLine} from './blank-line.js'\nimport {thematicBreak} from './thematic-break.js'\n\n/** @type {Construct} */\nexport const list = {\n name: 'list',\n tokenize: tokenizeListStart,\n continuation: {\n tokenize: tokenizeListContinuation\n },\n exit: tokenizeListEnd\n}\n\n/** @type {Construct} */\nconst listItemPrefixWhitespaceConstruct = {\n tokenize: tokenizeListItemPrefixWhitespace,\n partial: true\n}\n\n/** @type {Construct} */\nconst indentConstruct = {\n tokenize: tokenizeIndent,\n partial: true\n}\n\n// To do: `markdown-rs` parses list items on their own and later stitches them\n// together.\n\n/**\n * @type {Tokenizer}\n * @this {TokenizeContext}\n */\nfunction tokenizeListStart(effects, ok, nok) {\n const self = this\n const tail = self.events[self.events.length - 1]\n let initialSize =\n tail && tail[1].type === 'linePrefix'\n ? tail[2].sliceSerialize(tail[1], true).length\n : 0\n let size = 0\n return start\n\n /** @type {State} */\n function start(code) {\n const kind =\n self.containerState.type ||\n (code === 42 || code === 43 || code === 45\n ? 'listUnordered'\n : 'listOrdered')\n if (\n kind === 'listUnordered'\n ? !self.containerState.marker || code === self.containerState.marker\n : asciiDigit(code)\n ) {\n if (!self.containerState.type) {\n self.containerState.type = kind\n effects.enter(kind, {\n _container: true\n })\n }\n if (kind === 'listUnordered') {\n effects.enter('listItemPrefix')\n return code === 42 || code === 45\n ? effects.check(thematicBreak, nok, atMarker)(code)\n : atMarker(code)\n }\n if (!self.interrupt || code === 49) {\n effects.enter('listItemPrefix')\n effects.enter('listItemValue')\n return inside(code)\n }\n }\n return nok(code)\n }\n\n /** @type {State} */\n function inside(code) {\n if (asciiDigit(code) && ++size < 10) {\n effects.consume(code)\n return inside\n }\n if (\n (!self.interrupt || size < 2) &&\n (self.containerState.marker\n ? code === self.containerState.marker\n : code === 41 || code === 46)\n ) {\n effects.exit('listItemValue')\n return atMarker(code)\n }\n return nok(code)\n }\n\n /**\n * @type {State}\n **/\n function atMarker(code) {\n effects.enter('listItemMarker')\n effects.consume(code)\n effects.exit('listItemMarker')\n self.containerState.marker = self.containerState.marker || code\n return effects.check(\n blankLine,\n // Can’t be empty when interrupting.\n self.interrupt ? nok : onBlank,\n effects.attempt(\n listItemPrefixWhitespaceConstruct,\n endOfPrefix,\n otherPrefix\n )\n )\n }\n\n /** @type {State} */\n function onBlank(code) {\n self.containerState.initialBlankLine = true\n initialSize++\n return endOfPrefix(code)\n }\n\n /** @type {State} */\n function otherPrefix(code) {\n if (markdownSpace(code)) {\n effects.enter('listItemPrefixWhitespace')\n effects.consume(code)\n effects.exit('listItemPrefixWhitespace')\n return endOfPrefix\n }\n return nok(code)\n }\n\n /** @type {State} */\n function endOfPrefix(code) {\n self.containerState.size =\n initialSize +\n self.sliceSerialize(effects.exit('listItemPrefix'), true).length\n return ok(code)\n }\n}\n\n/**\n * @type {Tokenizer}\n * @this {TokenizeContext}\n */\nfunction tokenizeListContinuation(effects, ok, nok) {\n const self = this\n self.containerState._closeFlow = undefined\n return effects.check(blankLine, onBlank, notBlank)\n\n /** @type {State} */\n function onBlank(code) {\n self.containerState.furtherBlankLines =\n self.containerState.furtherBlankLines ||\n self.containerState.initialBlankLine\n\n // We have a blank line.\n // Still, try to consume at most the items size.\n return factorySpace(\n effects,\n ok,\n 'listItemIndent',\n self.containerState.size + 1\n )(code)\n }\n\n /** @type {State} */\n function notBlank(code) {\n if (self.containerState.furtherBlankLines || !markdownSpace(code)) {\n self.containerState.furtherBlankLines = undefined\n self.containerState.initialBlankLine = undefined\n return notInCurrentItem(code)\n }\n self.containerState.furtherBlankLines = undefined\n self.containerState.initialBlankLine = undefined\n return effects.attempt(indentConstruct, ok, notInCurrentItem)(code)\n }\n\n /** @type {State} */\n function notInCurrentItem(code) {\n // While we do continue, we signal that the flow should be closed.\n self.containerState._closeFlow = true\n // As we’re closing flow, we’re no longer interrupting.\n self.interrupt = undefined\n // Always populated by defaults.\n\n return factorySpace(\n effects,\n effects.attempt(list, ok, nok),\n 'linePrefix',\n self.parser.constructs.disable.null.includes('codeIndented')\n ? undefined\n : 4\n )(code)\n }\n}\n\n/**\n * @type {Tokenizer}\n * @this {TokenizeContext}\n */\nfunction tokenizeIndent(effects, ok, nok) {\n const self = this\n return factorySpace(\n effects,\n afterPrefix,\n 'listItemIndent',\n self.containerState.size + 1\n )\n\n /** @type {State} */\n function afterPrefix(code) {\n const tail = self.events[self.events.length - 1]\n return tail &&\n tail[1].type === 'listItemIndent' &&\n tail[2].sliceSerialize(tail[1], true).length === self.containerState.size\n ? ok(code)\n : nok(code)\n }\n}\n\n/**\n * @type {Exiter}\n * @this {TokenizeContext}\n */\nfunction tokenizeListEnd(effects) {\n effects.exit(this.containerState.type)\n}\n\n/**\n * @type {Tokenizer}\n * @this {TokenizeContext}\n */\nfunction tokenizeListItemPrefixWhitespace(effects, ok, nok) {\n const self = this\n\n // Always populated by defaults.\n\n return factorySpace(\n effects,\n afterPrefix,\n 'listItemPrefixWhitespace',\n self.parser.constructs.disable.null.includes('codeIndented')\n ? undefined\n : 4 + 1\n )\n\n /** @type {State} */\n function afterPrefix(code) {\n const tail = self.events[self.events.length - 1]\n return !markdownSpace(code) &&\n tail &&\n tail[1].type === 'listItemPrefixWhitespace'\n ? ok(code)\n : nok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Exiter} Exiter\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {factorySpace} from 'micromark-factory-space'\nimport {markdownSpace} from 'micromark-util-character'\n/** @type {Construct} */\nexport const blockQuote = {\n name: 'blockQuote',\n tokenize: tokenizeBlockQuoteStart,\n continuation: {\n tokenize: tokenizeBlockQuoteContinuation\n },\n exit\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeBlockQuoteStart(effects, ok, nok) {\n const self = this\n return start\n\n /**\n * Start of block quote.\n *\n * ```markdown\n * > | > a\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n if (code === 62) {\n const state = self.containerState\n if (!state.open) {\n effects.enter('blockQuote', {\n _container: true\n })\n state.open = true\n }\n effects.enter('blockQuotePrefix')\n effects.enter('blockQuoteMarker')\n effects.consume(code)\n effects.exit('blockQuoteMarker')\n return after\n }\n return nok(code)\n }\n\n /**\n * After `>`, before optional whitespace.\n *\n * ```markdown\n * > | > a\n * ^\n * ```\n *\n * @type {State}\n */\n function after(code) {\n if (markdownSpace(code)) {\n effects.enter('blockQuotePrefixWhitespace')\n effects.consume(code)\n effects.exit('blockQuotePrefixWhitespace')\n effects.exit('blockQuotePrefix')\n return ok\n }\n effects.exit('blockQuotePrefix')\n return ok(code)\n }\n}\n\n/**\n * Start of block quote continuation.\n *\n * ```markdown\n * | > a\n * > | > b\n * ^\n * ```\n *\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeBlockQuoteContinuation(effects, ok, nok) {\n const self = this\n return contStart\n\n /**\n * Start of block quote continuation.\n *\n * Also used to parse the first block quote opening.\n *\n * ```markdown\n * | > a\n * > | > b\n * ^\n * ```\n *\n * @type {State}\n */\n function contStart(code) {\n if (markdownSpace(code)) {\n // Always populated by defaults.\n\n return factorySpace(\n effects,\n contBefore,\n 'linePrefix',\n self.parser.constructs.disable.null.includes('codeIndented')\n ? undefined\n : 4\n )(code)\n }\n return contBefore(code)\n }\n\n /**\n * At `>`, after optional whitespace.\n *\n * Also used to parse the first block quote opening.\n *\n * ```markdown\n * | > a\n * > | > b\n * ^\n * ```\n *\n * @type {State}\n */\n function contBefore(code) {\n return effects.attempt(blockQuote, ok, nok)(code)\n }\n}\n\n/** @type {Exiter} */\nfunction exit(effects) {\n effects.exit('blockQuote')\n}\n","/**\n * @typedef {import('micromark-util-types').Effects} Effects\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenType} TokenType\n */\n\nimport {\n asciiControl,\n markdownLineEndingOrSpace,\n markdownLineEnding\n} from 'micromark-util-character'\n/**\n * Parse destinations.\n *\n * ###### Examples\n *\n * ```markdown\n * \n * b>\n * \n * \n * a\n * a\\)b\n * a(b)c\n * a(b)\n * ```\n *\n * @param {Effects} effects\n * Context.\n * @param {State} ok\n * State switched to when successful.\n * @param {State} nok\n * State switched to when unsuccessful.\n * @param {TokenType} type\n * Type for whole (`` or `b`).\n * @param {TokenType} literalType\n * Type when enclosed (``).\n * @param {TokenType} literalMarkerType\n * Type for enclosing (`<` and `>`).\n * @param {TokenType} rawType\n * Type when not enclosed (`b`).\n * @param {TokenType} stringType\n * Type for the value (`a` or `b`).\n * @param {number | undefined} [max=Infinity]\n * Depth of nested parens (inclusive).\n * @returns {State}\n * Start state.\n */ // eslint-disable-next-line max-params\nexport function factoryDestination(\n effects,\n ok,\n nok,\n type,\n literalType,\n literalMarkerType,\n rawType,\n stringType,\n max\n) {\n const limit = max || Number.POSITIVE_INFINITY\n let balance = 0\n return start\n\n /**\n * Start of destination.\n *\n * ```markdown\n * > | \n * ^\n * > | aa\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n if (code === 60) {\n effects.enter(type)\n effects.enter(literalType)\n effects.enter(literalMarkerType)\n effects.consume(code)\n effects.exit(literalMarkerType)\n return enclosedBefore\n }\n\n // ASCII control, space, closing paren.\n if (code === null || code === 32 || code === 41 || asciiControl(code)) {\n return nok(code)\n }\n effects.enter(type)\n effects.enter(rawType)\n effects.enter(stringType)\n effects.enter('chunkString', {\n contentType: 'string'\n })\n return raw(code)\n }\n\n /**\n * After `<`, at an enclosed destination.\n *\n * ```markdown\n * > | \n * ^\n * ```\n *\n * @type {State}\n */\n function enclosedBefore(code) {\n if (code === 62) {\n effects.enter(literalMarkerType)\n effects.consume(code)\n effects.exit(literalMarkerType)\n effects.exit(literalType)\n effects.exit(type)\n return ok\n }\n effects.enter(stringType)\n effects.enter('chunkString', {\n contentType: 'string'\n })\n return enclosed(code)\n }\n\n /**\n * In enclosed destination.\n *\n * ```markdown\n * > | \n * ^\n * ```\n *\n * @type {State}\n */\n function enclosed(code) {\n if (code === 62) {\n effects.exit('chunkString')\n effects.exit(stringType)\n return enclosedBefore(code)\n }\n if (code === null || code === 60 || markdownLineEnding(code)) {\n return nok(code)\n }\n effects.consume(code)\n return code === 92 ? enclosedEscape : enclosed\n }\n\n /**\n * After `\\`, at a special character.\n *\n * ```markdown\n * > | \n * ^\n * ```\n *\n * @type {State}\n */\n function enclosedEscape(code) {\n if (code === 60 || code === 62 || code === 92) {\n effects.consume(code)\n return enclosed\n }\n return enclosed(code)\n }\n\n /**\n * In raw destination.\n *\n * ```markdown\n * > | aa\n * ^\n * ```\n *\n * @type {State}\n */\n function raw(code) {\n if (\n !balance &&\n (code === null || code === 41 || markdownLineEndingOrSpace(code))\n ) {\n effects.exit('chunkString')\n effects.exit(stringType)\n effects.exit(rawType)\n effects.exit(type)\n return ok(code)\n }\n if (balance < limit && code === 40) {\n effects.consume(code)\n balance++\n return raw\n }\n if (code === 41) {\n effects.consume(code)\n balance--\n return raw\n }\n\n // ASCII control (but *not* `\\0`) and space and `(`.\n // Note: in `markdown-rs`, `\\0` exists in codes, in `micromark-js` it\n // doesn’t.\n if (code === null || code === 32 || code === 40 || asciiControl(code)) {\n return nok(code)\n }\n effects.consume(code)\n return code === 92 ? rawEscape : raw\n }\n\n /**\n * After `\\`, at special character.\n *\n * ```markdown\n * > | a\\*a\n * ^\n * ```\n *\n * @type {State}\n */\n function rawEscape(code) {\n if (code === 40 || code === 41 || code === 92) {\n effects.consume(code)\n return raw\n }\n return raw(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Effects} Effects\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').TokenType} TokenType\n */\n\nimport {markdownLineEnding, markdownSpace} from 'micromark-util-character'\n/**\n * Parse labels.\n *\n * > 👉 **Note**: labels in markdown are capped at 999 characters in the string.\n *\n * ###### Examples\n *\n * ```markdown\n * [a]\n * [a\n * b]\n * [a\\]b]\n * ```\n *\n * @this {TokenizeContext}\n * Tokenize context.\n * @param {Effects} effects\n * Context.\n * @param {State} ok\n * State switched to when successful.\n * @param {State} nok\n * State switched to when unsuccessful.\n * @param {TokenType} type\n * Type of the whole label (`[a]`).\n * @param {TokenType} markerType\n * Type for the markers (`[` and `]`).\n * @param {TokenType} stringType\n * Type for the identifier (`a`).\n * @returns {State}\n * Start state.\n */ // eslint-disable-next-line max-params\nexport function factoryLabel(effects, ok, nok, type, markerType, stringType) {\n const self = this\n let size = 0\n /** @type {boolean} */\n let seen\n return start\n\n /**\n * Start of label.\n *\n * ```markdown\n * > | [a]\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n effects.enter(type)\n effects.enter(markerType)\n effects.consume(code)\n effects.exit(markerType)\n effects.enter(stringType)\n return atBreak\n }\n\n /**\n * In label, at something, before something else.\n *\n * ```markdown\n * > | [a]\n * ^\n * ```\n *\n * @type {State}\n */\n function atBreak(code) {\n if (\n size > 999 ||\n code === null ||\n code === 91 ||\n (code === 93 && !seen) ||\n // To do: remove in the future once we’ve switched from\n // `micromark-extension-footnote` to `micromark-extension-gfm-footnote`,\n // which doesn’t need this.\n // Hidden footnotes hook.\n /* c8 ignore next 3 */\n (code === 94 &&\n !size &&\n '_hiddenFootnoteSupport' in self.parser.constructs)\n ) {\n return nok(code)\n }\n if (code === 93) {\n effects.exit(stringType)\n effects.enter(markerType)\n effects.consume(code)\n effects.exit(markerType)\n effects.exit(type)\n return ok\n }\n\n // To do: indent? Link chunks and EOLs together?\n if (markdownLineEnding(code)) {\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return atBreak\n }\n effects.enter('chunkString', {\n contentType: 'string'\n })\n return labelInside(code)\n }\n\n /**\n * In label, in text.\n *\n * ```markdown\n * > | [a]\n * ^\n * ```\n *\n * @type {State}\n */\n function labelInside(code) {\n if (\n code === null ||\n code === 91 ||\n code === 93 ||\n markdownLineEnding(code) ||\n size++ > 999\n ) {\n effects.exit('chunkString')\n return atBreak(code)\n }\n effects.consume(code)\n if (!seen) seen = !markdownSpace(code)\n return code === 92 ? labelEscape : labelInside\n }\n\n /**\n * After `\\`, at a special character.\n *\n * ```markdown\n * > | [a\\*a]\n * ^\n * ```\n *\n * @type {State}\n */\n function labelEscape(code) {\n if (code === 91 || code === 92 || code === 93) {\n effects.consume(code)\n size++\n return labelInside\n }\n return labelInside(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Code} Code\n * @typedef {import('micromark-util-types').Effects} Effects\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenType} TokenType\n */\n\nimport {factorySpace} from 'micromark-factory-space'\nimport {markdownLineEnding} from 'micromark-util-character'\n/**\n * Parse titles.\n *\n * ###### Examples\n *\n * ```markdown\n * \"a\"\n * 'b'\n * (c)\n * \"a\n * b\"\n * 'a\n * b'\n * (a\\)b)\n * ```\n *\n * @param {Effects} effects\n * Context.\n * @param {State} ok\n * State switched to when successful.\n * @param {State} nok\n * State switched to when unsuccessful.\n * @param {TokenType} type\n * Type of the whole title (`\"a\"`, `'b'`, `(c)`).\n * @param {TokenType} markerType\n * Type for the markers (`\"`, `'`, `(`, and `)`).\n * @param {TokenType} stringType\n * Type for the value (`a`).\n * @returns {State}\n * Start state.\n */ // eslint-disable-next-line max-params\nexport function factoryTitle(effects, ok, nok, type, markerType, stringType) {\n /** @type {NonNullable} */\n let marker\n return start\n\n /**\n * Start of title.\n *\n * ```markdown\n * > | \"a\"\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n if (code === 34 || code === 39 || code === 40) {\n effects.enter(type)\n effects.enter(markerType)\n effects.consume(code)\n effects.exit(markerType)\n marker = code === 40 ? 41 : code\n return begin\n }\n return nok(code)\n }\n\n /**\n * After opening marker.\n *\n * This is also used at the closing marker.\n *\n * ```markdown\n * > | \"a\"\n * ^\n * ```\n *\n * @type {State}\n */\n function begin(code) {\n if (code === marker) {\n effects.enter(markerType)\n effects.consume(code)\n effects.exit(markerType)\n effects.exit(type)\n return ok\n }\n effects.enter(stringType)\n return atBreak(code)\n }\n\n /**\n * At something, before something else.\n *\n * ```markdown\n * > | \"a\"\n * ^\n * ```\n *\n * @type {State}\n */\n function atBreak(code) {\n if (code === marker) {\n effects.exit(stringType)\n return begin(marker)\n }\n if (code === null) {\n return nok(code)\n }\n\n // Note: blank lines can’t exist in content.\n if (markdownLineEnding(code)) {\n // To do: use `space_or_tab_eol_with_options`, connect.\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return factorySpace(effects, atBreak, 'linePrefix')\n }\n effects.enter('chunkString', {\n contentType: 'string'\n })\n return inside(code)\n }\n\n /**\n *\n *\n * @type {State}\n */\n function inside(code) {\n if (code === marker || code === null || markdownLineEnding(code)) {\n effects.exit('chunkString')\n return atBreak(code)\n }\n effects.consume(code)\n return code === 92 ? escape : inside\n }\n\n /**\n * After `\\`, at a special character.\n *\n * ```markdown\n * > | \"a\\*b\"\n * ^\n * ```\n *\n * @type {State}\n */\n function escape(code) {\n if (code === marker || code === 92) {\n effects.consume(code)\n return inside\n }\n return inside(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Effects} Effects\n * @typedef {import('micromark-util-types').State} State\n */\n\nimport {factorySpace} from 'micromark-factory-space'\nimport {markdownLineEnding, markdownSpace} from 'micromark-util-character'\n/**\n * Parse spaces and tabs.\n *\n * There is no `nok` parameter:\n *\n * * line endings or spaces in markdown are often optional, in which case this\n * factory can be used and `ok` will be switched to whether spaces were found\n * or not\n * * one line ending or space can be detected with\n * `markdownLineEndingOrSpace(code)` right before using `factoryWhitespace`\n *\n * @param {Effects} effects\n * Context.\n * @param {State} ok\n * State switched to when successful.\n * @returns\n * Start state.\n */\nexport function factoryWhitespace(effects, ok) {\n /** @type {boolean} */\n let seen\n return start\n\n /** @type {State} */\n function start(code) {\n if (markdownLineEnding(code)) {\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n seen = true\n return start\n }\n if (markdownSpace(code)) {\n return factorySpace(\n effects,\n start,\n seen ? 'linePrefix' : 'lineSuffix'\n )(code)\n }\n return ok(code)\n }\n}\n","/**\n * Normalize an identifier (as found in references, definitions).\n *\n * Collapses markdown whitespace, trim, and then lower- and uppercase.\n *\n * Some characters are considered “uppercase”, such as U+03F4 (`ϴ`), but if their\n * lowercase counterpart (U+03B8 (`θ`)) is uppercased will result in a different\n * uppercase character (U+0398 (`Θ`)).\n * So, to get a canonical form, we perform both lower- and uppercase.\n *\n * Using uppercase last makes sure keys will never interact with default\n * prototypal values (such as `constructor`): nothing in the prototype of\n * `Object` is uppercase.\n *\n * @param {string} value\n * Identifier to normalize.\n * @returns {string}\n * Normalized identifier.\n */\nexport function normalizeIdentifier(value) {\n return (\n value\n // Collapse markdown whitespace.\n .replace(/[\\t\\n\\r ]+/g, ' ')\n // Trim.\n .replace(/^ | $/g, '')\n // Some characters are considered “uppercase”, but if their lowercase\n // counterpart is uppercased will result in a different uppercase\n // character.\n // Hence, to get that form, we perform both lower- and uppercase.\n // Upper case makes sure keys will not interact with default prototypal\n // methods: no method is uppercase.\n .toLowerCase()\n .toUpperCase()\n )\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {factoryDestination} from 'micromark-factory-destination'\nimport {factoryLabel} from 'micromark-factory-label'\nimport {factorySpace} from 'micromark-factory-space'\nimport {factoryTitle} from 'micromark-factory-title'\nimport {factoryWhitespace} from 'micromark-factory-whitespace'\nimport {\n markdownLineEnding,\n markdownLineEndingOrSpace,\n markdownSpace\n} from 'micromark-util-character'\nimport {normalizeIdentifier} from 'micromark-util-normalize-identifier'\n/** @type {Construct} */\nexport const definition = {\n name: 'definition',\n tokenize: tokenizeDefinition\n}\n\n/** @type {Construct} */\nconst titleBefore = {\n tokenize: tokenizeTitleBefore,\n partial: true\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeDefinition(effects, ok, nok) {\n const self = this\n /** @type {string} */\n let identifier\n return start\n\n /**\n * At start of a definition.\n *\n * ```markdown\n * > | [a]: b \"c\"\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n // Do not interrupt paragraphs (but do follow definitions).\n // To do: do `interrupt` the way `markdown-rs` does.\n // To do: parse whitespace the way `markdown-rs` does.\n effects.enter('definition')\n return before(code)\n }\n\n /**\n * After optional whitespace, at `[`.\n *\n * ```markdown\n * > | [a]: b \"c\"\n * ^\n * ```\n *\n * @type {State}\n */\n function before(code) {\n // To do: parse whitespace the way `markdown-rs` does.\n\n return factoryLabel.call(\n self,\n effects,\n labelAfter,\n // Note: we don’t need to reset the way `markdown-rs` does.\n nok,\n 'definitionLabel',\n 'definitionLabelMarker',\n 'definitionLabelString'\n )(code)\n }\n\n /**\n * After label.\n *\n * ```markdown\n * > | [a]: b \"c\"\n * ^\n * ```\n *\n * @type {State}\n */\n function labelAfter(code) {\n identifier = normalizeIdentifier(\n self.sliceSerialize(self.events[self.events.length - 1][1]).slice(1, -1)\n )\n if (code === 58) {\n effects.enter('definitionMarker')\n effects.consume(code)\n effects.exit('definitionMarker')\n return markerAfter\n }\n return nok(code)\n }\n\n /**\n * After marker.\n *\n * ```markdown\n * > | [a]: b \"c\"\n * ^\n * ```\n *\n * @type {State}\n */\n function markerAfter(code) {\n // Note: whitespace is optional.\n return markdownLineEndingOrSpace(code)\n ? factoryWhitespace(effects, destinationBefore)(code)\n : destinationBefore(code)\n }\n\n /**\n * Before destination.\n *\n * ```markdown\n * > | [a]: b \"c\"\n * ^\n * ```\n *\n * @type {State}\n */\n function destinationBefore(code) {\n return factoryDestination(\n effects,\n destinationAfter,\n // Note: we don’t need to reset the way `markdown-rs` does.\n nok,\n 'definitionDestination',\n 'definitionDestinationLiteral',\n 'definitionDestinationLiteralMarker',\n 'definitionDestinationRaw',\n 'definitionDestinationString'\n )(code)\n }\n\n /**\n * After destination.\n *\n * ```markdown\n * > | [a]: b \"c\"\n * ^\n * ```\n *\n * @type {State}\n */\n function destinationAfter(code) {\n return effects.attempt(titleBefore, after, after)(code)\n }\n\n /**\n * After definition.\n *\n * ```markdown\n * > | [a]: b\n * ^\n * > | [a]: b \"c\"\n * ^\n * ```\n *\n * @type {State}\n */\n function after(code) {\n return markdownSpace(code)\n ? factorySpace(effects, afterWhitespace, 'whitespace')(code)\n : afterWhitespace(code)\n }\n\n /**\n * After definition, after optional whitespace.\n *\n * ```markdown\n * > | [a]: b\n * ^\n * > | [a]: b \"c\"\n * ^\n * ```\n *\n * @type {State}\n */\n function afterWhitespace(code) {\n if (code === null || markdownLineEnding(code)) {\n effects.exit('definition')\n\n // Note: we don’t care about uniqueness.\n // It’s likely that that doesn’t happen very frequently.\n // It is more likely that it wastes precious time.\n self.parser.defined.push(identifier)\n\n // To do: `markdown-rs` interrupt.\n // // You’d be interrupting.\n // tokenizer.interrupt = true\n return ok(code)\n }\n return nok(code)\n }\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeTitleBefore(effects, ok, nok) {\n return titleBefore\n\n /**\n * After destination, at whitespace.\n *\n * ```markdown\n * > | [a]: b\n * ^\n * > | [a]: b \"c\"\n * ^\n * ```\n *\n * @type {State}\n */\n function titleBefore(code) {\n return markdownLineEndingOrSpace(code)\n ? factoryWhitespace(effects, beforeMarker)(code)\n : nok(code)\n }\n\n /**\n * At title.\n *\n * ```markdown\n * | [a]: b\n * > | \"c\"\n * ^\n * ```\n *\n * @type {State}\n */\n function beforeMarker(code) {\n return factoryTitle(\n effects,\n titleAfter,\n nok,\n 'definitionTitle',\n 'definitionTitleMarker',\n 'definitionTitleString'\n )(code)\n }\n\n /**\n * After title.\n *\n * ```markdown\n * > | [a]: b \"c\"\n * ^\n * ```\n *\n * @type {State}\n */\n function titleAfter(code) {\n return markdownSpace(code)\n ? factorySpace(effects, titleAfterOptionalWhitespace, 'whitespace')(code)\n : titleAfterOptionalWhitespace(code)\n }\n\n /**\n * After title, after optional whitespace.\n *\n * ```markdown\n * > | [a]: b \"c\"\n * ^\n * ```\n *\n * @type {State}\n */\n function titleAfterOptionalWhitespace(code) {\n return code === null || markdownLineEnding(code) ? ok(code) : nok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {factorySpace} from 'micromark-factory-space'\nimport {markdownLineEnding, markdownSpace} from 'micromark-util-character'\n/** @type {Construct} */\nexport const codeIndented = {\n name: 'codeIndented',\n tokenize: tokenizeCodeIndented\n}\n\n/** @type {Construct} */\nconst furtherStart = {\n tokenize: tokenizeFurtherStart,\n partial: true\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeCodeIndented(effects, ok, nok) {\n const self = this\n return start\n\n /**\n * Start of code (indented).\n *\n * > **Parsing note**: it is not needed to check if this first line is a\n * > filled line (that it has a non-whitespace character), because blank lines\n * > are parsed already, so we never run into that.\n *\n * ```markdown\n * > | aaa\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n // To do: manually check if interrupting like `markdown-rs`.\n\n effects.enter('codeIndented')\n // To do: use an improved `space_or_tab` function like `markdown-rs`,\n // so that we can drop the next state.\n return factorySpace(effects, afterPrefix, 'linePrefix', 4 + 1)(code)\n }\n\n /**\n * At start, after 1 or 4 spaces.\n *\n * ```markdown\n * > | aaa\n * ^\n * ```\n *\n * @type {State}\n */\n function afterPrefix(code) {\n const tail = self.events[self.events.length - 1]\n return tail &&\n tail[1].type === 'linePrefix' &&\n tail[2].sliceSerialize(tail[1], true).length >= 4\n ? atBreak(code)\n : nok(code)\n }\n\n /**\n * At a break.\n *\n * ```markdown\n * > | aaa\n * ^ ^\n * ```\n *\n * @type {State}\n */\n function atBreak(code) {\n if (code === null) {\n return after(code)\n }\n if (markdownLineEnding(code)) {\n return effects.attempt(furtherStart, atBreak, after)(code)\n }\n effects.enter('codeFlowValue')\n return inside(code)\n }\n\n /**\n * In code content.\n *\n * ```markdown\n * > | aaa\n * ^^^^\n * ```\n *\n * @type {State}\n */\n function inside(code) {\n if (code === null || markdownLineEnding(code)) {\n effects.exit('codeFlowValue')\n return atBreak(code)\n }\n effects.consume(code)\n return inside\n }\n\n /** @type {State} */\n function after(code) {\n effects.exit('codeIndented')\n // To do: allow interrupting like `markdown-rs`.\n // Feel free to interrupt.\n // tokenizer.interrupt = false\n return ok(code)\n }\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeFurtherStart(effects, ok, nok) {\n const self = this\n return furtherStart\n\n /**\n * At eol, trying to parse another indent.\n *\n * ```markdown\n * > | aaa\n * ^\n * | bbb\n * ```\n *\n * @type {State}\n */\n function furtherStart(code) {\n // To do: improve `lazy` / `pierce` handling.\n // If this is a lazy line, it can’t be code.\n if (self.parser.lazy[self.now().line]) {\n return nok(code)\n }\n if (markdownLineEnding(code)) {\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return furtherStart\n }\n\n // To do: the code here in `micromark-js` is a bit different from\n // `markdown-rs` because there it can attempt spaces.\n // We can’t yet.\n //\n // To do: use an improved `space_or_tab` function like `markdown-rs`,\n // so that we can drop the next state.\n return factorySpace(effects, afterPrefix, 'linePrefix', 4 + 1)(code)\n }\n\n /**\n * At start, after 1 or 4 spaces.\n *\n * ```markdown\n * > | aaa\n * ^\n * ```\n *\n * @type {State}\n */\n function afterPrefix(code) {\n const tail = self.events[self.events.length - 1]\n return tail &&\n tail[1].type === 'linePrefix' &&\n tail[2].sliceSerialize(tail[1], true).length >= 4\n ? ok(code)\n : markdownLineEnding(code)\n ? furtherStart(code)\n : nok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Resolver} Resolver\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').Token} Token\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {factorySpace} from 'micromark-factory-space'\nimport {\n markdownLineEnding,\n markdownLineEndingOrSpace,\n markdownSpace\n} from 'micromark-util-character'\nimport {splice} from 'micromark-util-chunked'\n/** @type {Construct} */\nexport const headingAtx = {\n name: 'headingAtx',\n tokenize: tokenizeHeadingAtx,\n resolve: resolveHeadingAtx\n}\n\n/** @type {Resolver} */\nfunction resolveHeadingAtx(events, context) {\n let contentEnd = events.length - 2\n let contentStart = 3\n /** @type {Token} */\n let content\n /** @type {Token} */\n let text\n\n // Prefix whitespace, part of the opening.\n if (events[contentStart][1].type === 'whitespace') {\n contentStart += 2\n }\n\n // Suffix whitespace, part of the closing.\n if (\n contentEnd - 2 > contentStart &&\n events[contentEnd][1].type === 'whitespace'\n ) {\n contentEnd -= 2\n }\n if (\n events[contentEnd][1].type === 'atxHeadingSequence' &&\n (contentStart === contentEnd - 1 ||\n (contentEnd - 4 > contentStart &&\n events[contentEnd - 2][1].type === 'whitespace'))\n ) {\n contentEnd -= contentStart + 1 === contentEnd ? 2 : 4\n }\n if (contentEnd > contentStart) {\n content = {\n type: 'atxHeadingText',\n start: events[contentStart][1].start,\n end: events[contentEnd][1].end\n }\n text = {\n type: 'chunkText',\n start: events[contentStart][1].start,\n end: events[contentEnd][1].end,\n contentType: 'text'\n }\n splice(events, contentStart, contentEnd - contentStart + 1, [\n ['enter', content, context],\n ['enter', text, context],\n ['exit', text, context],\n ['exit', content, context]\n ])\n }\n return events\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeHeadingAtx(effects, ok, nok) {\n let size = 0\n return start\n\n /**\n * Start of a heading (atx).\n *\n * ```markdown\n * > | ## aa\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n // To do: parse indent like `markdown-rs`.\n effects.enter('atxHeading')\n return before(code)\n }\n\n /**\n * After optional whitespace, at `#`.\n *\n * ```markdown\n * > | ## aa\n * ^\n * ```\n *\n * @type {State}\n */\n function before(code) {\n effects.enter('atxHeadingSequence')\n return sequenceOpen(code)\n }\n\n /**\n * In opening sequence.\n *\n * ```markdown\n * > | ## aa\n * ^\n * ```\n *\n * @type {State}\n */\n function sequenceOpen(code) {\n if (code === 35 && size++ < 6) {\n effects.consume(code)\n return sequenceOpen\n }\n\n // Always at least one `#`.\n if (code === null || markdownLineEndingOrSpace(code)) {\n effects.exit('atxHeadingSequence')\n return atBreak(code)\n }\n return nok(code)\n }\n\n /**\n * After something, before something else.\n *\n * ```markdown\n * > | ## aa\n * ^\n * ```\n *\n * @type {State}\n */\n function atBreak(code) {\n if (code === 35) {\n effects.enter('atxHeadingSequence')\n return sequenceFurther(code)\n }\n if (code === null || markdownLineEnding(code)) {\n effects.exit('atxHeading')\n // To do: interrupt like `markdown-rs`.\n // // Feel free to interrupt.\n // tokenizer.interrupt = false\n return ok(code)\n }\n if (markdownSpace(code)) {\n return factorySpace(effects, atBreak, 'whitespace')(code)\n }\n\n // To do: generate `data` tokens, add the `text` token later.\n // Needs edit map, see: `markdown.rs`.\n effects.enter('atxHeadingText')\n return data(code)\n }\n\n /**\n * In further sequence (after whitespace).\n *\n * Could be normal “visible” hashes in the heading or a final sequence.\n *\n * ```markdown\n * > | ## aa ##\n * ^\n * ```\n *\n * @type {State}\n */\n function sequenceFurther(code) {\n if (code === 35) {\n effects.consume(code)\n return sequenceFurther\n }\n effects.exit('atxHeadingSequence')\n return atBreak(code)\n }\n\n /**\n * In text.\n *\n * ```markdown\n * > | ## aa\n * ^\n * ```\n *\n * @type {State}\n */\n function data(code) {\n if (code === null || code === 35 || markdownLineEndingOrSpace(code)) {\n effects.exit('atxHeadingText')\n return atBreak(code)\n }\n effects.consume(code)\n return data\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Code} Code\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Resolver} Resolver\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {factorySpace} from 'micromark-factory-space'\nimport {markdownLineEnding, markdownSpace} from 'micromark-util-character'\n/** @type {Construct} */\nexport const setextUnderline = {\n name: 'setextUnderline',\n tokenize: tokenizeSetextUnderline,\n resolveTo: resolveToSetextUnderline\n}\n\n/** @type {Resolver} */\nfunction resolveToSetextUnderline(events, context) {\n // To do: resolve like `markdown-rs`.\n let index = events.length\n /** @type {number | undefined} */\n let content\n /** @type {number | undefined} */\n let text\n /** @type {number | undefined} */\n let definition\n\n // Find the opening of the content.\n // It’ll always exist: we don’t tokenize if it isn’t there.\n while (index--) {\n if (events[index][0] === 'enter') {\n if (events[index][1].type === 'content') {\n content = index\n break\n }\n if (events[index][1].type === 'paragraph') {\n text = index\n }\n }\n // Exit\n else {\n if (events[index][1].type === 'content') {\n // Remove the content end (if needed we’ll add it later)\n events.splice(index, 1)\n }\n if (!definition && events[index][1].type === 'definition') {\n definition = index\n }\n }\n }\n const heading = {\n type: 'setextHeading',\n start: Object.assign({}, events[text][1].start),\n end: Object.assign({}, events[events.length - 1][1].end)\n }\n\n // Change the paragraph to setext heading text.\n events[text][1].type = 'setextHeadingText'\n\n // If we have definitions in the content, we’ll keep on having content,\n // but we need move it.\n if (definition) {\n events.splice(text, 0, ['enter', heading, context])\n events.splice(definition + 1, 0, ['exit', events[content][1], context])\n events[content][1].end = Object.assign({}, events[definition][1].end)\n } else {\n events[content][1] = heading\n }\n\n // Add the heading exit at the end.\n events.push(['exit', heading, context])\n return events\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeSetextUnderline(effects, ok, nok) {\n const self = this\n /** @type {NonNullable} */\n let marker\n return start\n\n /**\n * At start of heading (setext) underline.\n *\n * ```markdown\n * | aa\n * > | ==\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n let index = self.events.length\n /** @type {boolean | undefined} */\n let paragraph\n // Find an opening.\n while (index--) {\n // Skip enter/exit of line ending, line prefix, and content.\n // We can now either have a definition or a paragraph.\n if (\n self.events[index][1].type !== 'lineEnding' &&\n self.events[index][1].type !== 'linePrefix' &&\n self.events[index][1].type !== 'content'\n ) {\n paragraph = self.events[index][1].type === 'paragraph'\n break\n }\n }\n\n // To do: handle lazy/pierce like `markdown-rs`.\n // To do: parse indent like `markdown-rs`.\n if (!self.parser.lazy[self.now().line] && (self.interrupt || paragraph)) {\n effects.enter('setextHeadingLine')\n marker = code\n return before(code)\n }\n return nok(code)\n }\n\n /**\n * After optional whitespace, at `-` or `=`.\n *\n * ```markdown\n * | aa\n * > | ==\n * ^\n * ```\n *\n * @type {State}\n */\n function before(code) {\n effects.enter('setextHeadingLineSequence')\n return inside(code)\n }\n\n /**\n * In sequence.\n *\n * ```markdown\n * | aa\n * > | ==\n * ^\n * ```\n *\n * @type {State}\n */\n function inside(code) {\n if (code === marker) {\n effects.consume(code)\n return inside\n }\n effects.exit('setextHeadingLineSequence')\n return markdownSpace(code)\n ? factorySpace(effects, after, 'lineSuffix')(code)\n : after(code)\n }\n\n /**\n * After sequence, after optional whitespace.\n *\n * ```markdown\n * | aa\n * > | ==\n * ^\n * ```\n *\n * @type {State}\n */\n function after(code) {\n if (code === null || markdownLineEnding(code)) {\n effects.exit('setextHeadingLine')\n return ok(code)\n }\n return nok(code)\n }\n}\n","/**\n * List of lowercase HTML “block” tag names.\n *\n * The list, when parsing HTML (flow), results in more relaxed rules (condition\n * 6).\n * Because they are known blocks, the HTML-like syntax doesn’t have to be\n * strictly parsed.\n * For tag names not in this list, a more strict algorithm (condition 7) is used\n * to detect whether the HTML-like syntax is seen as HTML (flow) or not.\n *\n * This is copied from:\n * .\n *\n * > 👉 **Note**: `search` was added in `CommonMark@0.31`.\n */\nexport const htmlBlockNames = [\n 'address',\n 'article',\n 'aside',\n 'base',\n 'basefont',\n 'blockquote',\n 'body',\n 'caption',\n 'center',\n 'col',\n 'colgroup',\n 'dd',\n 'details',\n 'dialog',\n 'dir',\n 'div',\n 'dl',\n 'dt',\n 'fieldset',\n 'figcaption',\n 'figure',\n 'footer',\n 'form',\n 'frame',\n 'frameset',\n 'h1',\n 'h2',\n 'h3',\n 'h4',\n 'h5',\n 'h6',\n 'head',\n 'header',\n 'hr',\n 'html',\n 'iframe',\n 'legend',\n 'li',\n 'link',\n 'main',\n 'menu',\n 'menuitem',\n 'nav',\n 'noframes',\n 'ol',\n 'optgroup',\n 'option',\n 'p',\n 'param',\n 'search',\n 'section',\n 'summary',\n 'table',\n 'tbody',\n 'td',\n 'tfoot',\n 'th',\n 'thead',\n 'title',\n 'tr',\n 'track',\n 'ul'\n]\n\n/**\n * List of lowercase HTML “raw” tag names.\n *\n * The list, when parsing HTML (flow), results in HTML that can include lines\n * without exiting, until a closing tag also in this list is found (condition\n * 1).\n *\n * This module is copied from:\n * .\n *\n * > 👉 **Note**: `textarea` was added in `CommonMark@0.30`.\n */\nexport const htmlRawNames = ['pre', 'script', 'style', 'textarea']\n","/**\n * @typedef {import('micromark-util-types').Code} Code\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Resolver} Resolver\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {\n asciiAlpha,\n asciiAlphanumeric,\n markdownLineEnding,\n markdownLineEndingOrSpace,\n markdownSpace\n} from 'micromark-util-character'\nimport {htmlBlockNames, htmlRawNames} from 'micromark-util-html-tag-name'\nimport {blankLine} from './blank-line.js'\n\n/** @type {Construct} */\nexport const htmlFlow = {\n name: 'htmlFlow',\n tokenize: tokenizeHtmlFlow,\n resolveTo: resolveToHtmlFlow,\n concrete: true\n}\n\n/** @type {Construct} */\nconst blankLineBefore = {\n tokenize: tokenizeBlankLineBefore,\n partial: true\n}\nconst nonLazyContinuationStart = {\n tokenize: tokenizeNonLazyContinuationStart,\n partial: true\n}\n\n/** @type {Resolver} */\nfunction resolveToHtmlFlow(events) {\n let index = events.length\n while (index--) {\n if (events[index][0] === 'enter' && events[index][1].type === 'htmlFlow') {\n break\n }\n }\n if (index > 1 && events[index - 2][1].type === 'linePrefix') {\n // Add the prefix start to the HTML token.\n events[index][1].start = events[index - 2][1].start\n // Add the prefix start to the HTML line token.\n events[index + 1][1].start = events[index - 2][1].start\n // Remove the line prefix.\n events.splice(index - 2, 2)\n }\n return events\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeHtmlFlow(effects, ok, nok) {\n const self = this\n /** @type {number} */\n let marker\n /** @type {boolean} */\n let closingTag\n /** @type {string} */\n let buffer\n /** @type {number} */\n let index\n /** @type {Code} */\n let markerB\n return start\n\n /**\n * Start of HTML (flow).\n *\n * ```markdown\n * > | \n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n // To do: parse indent like `markdown-rs`.\n return before(code)\n }\n\n /**\n * At `<`, after optional whitespace.\n *\n * ```markdown\n * > | \n * ^\n * ```\n *\n * @type {State}\n */\n function before(code) {\n effects.enter('htmlFlow')\n effects.enter('htmlFlowData')\n effects.consume(code)\n return open\n }\n\n /**\n * After `<`, at tag name or other stuff.\n *\n * ```markdown\n * > | \n * ^\n * > | \n * ^\n * > | \n * ^\n * ```\n *\n * @type {State}\n */\n function open(code) {\n if (code === 33) {\n effects.consume(code)\n return declarationOpen\n }\n if (code === 47) {\n effects.consume(code)\n closingTag = true\n return tagCloseStart\n }\n if (code === 63) {\n effects.consume(code)\n marker = 3\n // To do:\n // tokenizer.concrete = true\n // To do: use `markdown-rs` style interrupt.\n // While we’re in an instruction instead of a declaration, we’re on a `?`\n // right now, so we do need to search for `>`, similar to declarations.\n return self.interrupt ? ok : continuationDeclarationInside\n }\n\n // ASCII alphabetical.\n if (asciiAlpha(code)) {\n effects.consume(code)\n // @ts-expect-error: not null.\n buffer = String.fromCharCode(code)\n return tagName\n }\n return nok(code)\n }\n\n /**\n * After ` | \n * ^\n * > | \n * ^\n * > | &<]]>\n * ^\n * ```\n *\n * @type {State}\n */\n function declarationOpen(code) {\n if (code === 45) {\n effects.consume(code)\n marker = 2\n return commentOpenInside\n }\n if (code === 91) {\n effects.consume(code)\n marker = 5\n index = 0\n return cdataOpenInside\n }\n\n // ASCII alphabetical.\n if (asciiAlpha(code)) {\n effects.consume(code)\n marker = 4\n // // Do not form containers.\n // tokenizer.concrete = true\n return self.interrupt ? ok : continuationDeclarationInside\n }\n return nok(code)\n }\n\n /**\n * After ` | \n * ^\n * ```\n *\n * @type {State}\n */\n function commentOpenInside(code) {\n if (code === 45) {\n effects.consume(code)\n // // Do not form containers.\n // tokenizer.concrete = true\n return self.interrupt ? ok : continuationDeclarationInside\n }\n return nok(code)\n }\n\n /**\n * After ` | &<]]>\n * ^^^^^^\n * ```\n *\n * @type {State}\n */\n function cdataOpenInside(code) {\n const value = 'CDATA['\n if (code === value.charCodeAt(index++)) {\n effects.consume(code)\n if (index === value.length) {\n // // Do not form containers.\n // tokenizer.concrete = true\n return self.interrupt ? ok : continuation\n }\n return cdataOpenInside\n }\n return nok(code)\n }\n\n /**\n * After ` | \n * ^\n * ```\n *\n * @type {State}\n */\n function tagCloseStart(code) {\n if (asciiAlpha(code)) {\n effects.consume(code)\n // @ts-expect-error: not null.\n buffer = String.fromCharCode(code)\n return tagName\n }\n return nok(code)\n }\n\n /**\n * In tag name.\n *\n * ```markdown\n * > | \n * ^^\n * > | \n * ^^\n * ```\n *\n * @type {State}\n */\n function tagName(code) {\n if (\n code === null ||\n code === 47 ||\n code === 62 ||\n markdownLineEndingOrSpace(code)\n ) {\n const slash = code === 47\n const name = buffer.toLowerCase()\n if (!slash && !closingTag && htmlRawNames.includes(name)) {\n marker = 1\n // // Do not form containers.\n // tokenizer.concrete = true\n return self.interrupt ? ok(code) : continuation(code)\n }\n if (htmlBlockNames.includes(buffer.toLowerCase())) {\n marker = 6\n if (slash) {\n effects.consume(code)\n return basicSelfClosing\n }\n\n // // Do not form containers.\n // tokenizer.concrete = true\n return self.interrupt ? ok(code) : continuation(code)\n }\n marker = 7\n // Do not support complete HTML when interrupting.\n return self.interrupt && !self.parser.lazy[self.now().line]\n ? nok(code)\n : closingTag\n ? completeClosingTagAfter(code)\n : completeAttributeNameBefore(code)\n }\n\n // ASCII alphanumerical and `-`.\n if (code === 45 || asciiAlphanumeric(code)) {\n effects.consume(code)\n buffer += String.fromCharCode(code)\n return tagName\n }\n return nok(code)\n }\n\n /**\n * After closing slash of a basic tag name.\n *\n * ```markdown\n * > |
\n * ^\n * ```\n *\n * @type {State}\n */\n function basicSelfClosing(code) {\n if (code === 62) {\n effects.consume(code)\n // // Do not form containers.\n // tokenizer.concrete = true\n return self.interrupt ? ok : continuation\n }\n return nok(code)\n }\n\n /**\n * After closing slash of a complete tag name.\n *\n * ```markdown\n * > | \n * ^\n * ```\n *\n * @type {State}\n */\n function completeClosingTagAfter(code) {\n if (markdownSpace(code)) {\n effects.consume(code)\n return completeClosingTagAfter\n }\n return completeEnd(code)\n }\n\n /**\n * At an attribute name.\n *\n * At first, this state is used after a complete tag name, after whitespace,\n * where it expects optional attributes or the end of the tag.\n * It is also reused after attributes, when expecting more optional\n * attributes.\n *\n * ```markdown\n * > | \n * ^\n * > | \n * ^\n * > | \n * ^\n * > | \n * ^\n * > | \n * ^\n * ```\n *\n * @type {State}\n */\n function completeAttributeNameBefore(code) {\n if (code === 47) {\n effects.consume(code)\n return completeEnd\n }\n\n // ASCII alphanumerical and `:` and `_`.\n if (code === 58 || code === 95 || asciiAlpha(code)) {\n effects.consume(code)\n return completeAttributeName\n }\n if (markdownSpace(code)) {\n effects.consume(code)\n return completeAttributeNameBefore\n }\n return completeEnd(code)\n }\n\n /**\n * In attribute name.\n *\n * ```markdown\n * > | \n * ^\n * > | \n * ^\n * > | \n * ^\n * ```\n *\n * @type {State}\n */\n function completeAttributeName(code) {\n // ASCII alphanumerical and `-`, `.`, `:`, and `_`.\n if (\n code === 45 ||\n code === 46 ||\n code === 58 ||\n code === 95 ||\n asciiAlphanumeric(code)\n ) {\n effects.consume(code)\n return completeAttributeName\n }\n return completeAttributeNameAfter(code)\n }\n\n /**\n * After attribute name, at an optional initializer, the end of the tag, or\n * whitespace.\n *\n * ```markdown\n * > | \n * ^\n * > | \n * ^\n * ```\n *\n * @type {State}\n */\n function completeAttributeNameAfter(code) {\n if (code === 61) {\n effects.consume(code)\n return completeAttributeValueBefore\n }\n if (markdownSpace(code)) {\n effects.consume(code)\n return completeAttributeNameAfter\n }\n return completeAttributeNameBefore(code)\n }\n\n /**\n * Before unquoted, double quoted, or single quoted attribute value, allowing\n * whitespace.\n *\n * ```markdown\n * > | \n * ^\n * > | \n * ^\n * ```\n *\n * @type {State}\n */\n function completeAttributeValueBefore(code) {\n if (\n code === null ||\n code === 60 ||\n code === 61 ||\n code === 62 ||\n code === 96\n ) {\n return nok(code)\n }\n if (code === 34 || code === 39) {\n effects.consume(code)\n markerB = code\n return completeAttributeValueQuoted\n }\n if (markdownSpace(code)) {\n effects.consume(code)\n return completeAttributeValueBefore\n }\n return completeAttributeValueUnquoted(code)\n }\n\n /**\n * In double or single quoted attribute value.\n *\n * ```markdown\n * > | \n * ^\n * > | \n * ^\n * ```\n *\n * @type {State}\n */\n function completeAttributeValueQuoted(code) {\n if (code === markerB) {\n effects.consume(code)\n markerB = null\n return completeAttributeValueQuotedAfter\n }\n if (code === null || markdownLineEnding(code)) {\n return nok(code)\n }\n effects.consume(code)\n return completeAttributeValueQuoted\n }\n\n /**\n * In unquoted attribute value.\n *\n * ```markdown\n * > | \n * ^\n * ```\n *\n * @type {State}\n */\n function completeAttributeValueUnquoted(code) {\n if (\n code === null ||\n code === 34 ||\n code === 39 ||\n code === 47 ||\n code === 60 ||\n code === 61 ||\n code === 62 ||\n code === 96 ||\n markdownLineEndingOrSpace(code)\n ) {\n return completeAttributeNameAfter(code)\n }\n effects.consume(code)\n return completeAttributeValueUnquoted\n }\n\n /**\n * After double or single quoted attribute value, before whitespace or the\n * end of the tag.\n *\n * ```markdown\n * > | \n * ^\n * ```\n *\n * @type {State}\n */\n function completeAttributeValueQuotedAfter(code) {\n if (code === 47 || code === 62 || markdownSpace(code)) {\n return completeAttributeNameBefore(code)\n }\n return nok(code)\n }\n\n /**\n * In certain circumstances of a complete tag where only an `>` is allowed.\n *\n * ```markdown\n * > | \n * ^\n * ```\n *\n * @type {State}\n */\n function completeEnd(code) {\n if (code === 62) {\n effects.consume(code)\n return completeAfter\n }\n return nok(code)\n }\n\n /**\n * After `>` in a complete tag.\n *\n * ```markdown\n * > | \n * ^\n * ```\n *\n * @type {State}\n */\n function completeAfter(code) {\n if (code === null || markdownLineEnding(code)) {\n // // Do not form containers.\n // tokenizer.concrete = true\n return continuation(code)\n }\n if (markdownSpace(code)) {\n effects.consume(code)\n return completeAfter\n }\n return nok(code)\n }\n\n /**\n * In continuation of any HTML kind.\n *\n * ```markdown\n * > | \n * ^\n * ```\n *\n * @type {State}\n */\n function continuation(code) {\n if (code === 45 && marker === 2) {\n effects.consume(code)\n return continuationCommentInside\n }\n if (code === 60 && marker === 1) {\n effects.consume(code)\n return continuationRawTagOpen\n }\n if (code === 62 && marker === 4) {\n effects.consume(code)\n return continuationClose\n }\n if (code === 63 && marker === 3) {\n effects.consume(code)\n return continuationDeclarationInside\n }\n if (code === 93 && marker === 5) {\n effects.consume(code)\n return continuationCdataInside\n }\n if (markdownLineEnding(code) && (marker === 6 || marker === 7)) {\n effects.exit('htmlFlowData')\n return effects.check(\n blankLineBefore,\n continuationAfter,\n continuationStart\n )(code)\n }\n if (code === null || markdownLineEnding(code)) {\n effects.exit('htmlFlowData')\n return continuationStart(code)\n }\n effects.consume(code)\n return continuation\n }\n\n /**\n * In continuation, at eol.\n *\n * ```markdown\n * > | \n * ^\n * | asd\n * ```\n *\n * @type {State}\n */\n function continuationStart(code) {\n return effects.check(\n nonLazyContinuationStart,\n continuationStartNonLazy,\n continuationAfter\n )(code)\n }\n\n /**\n * In continuation, at eol, before non-lazy content.\n *\n * ```markdown\n * > | \n * ^\n * | asd\n * ```\n *\n * @type {State}\n */\n function continuationStartNonLazy(code) {\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return continuationBefore\n }\n\n /**\n * In continuation, before non-lazy content.\n *\n * ```markdown\n * | \n * > | asd\n * ^\n * ```\n *\n * @type {State}\n */\n function continuationBefore(code) {\n if (code === null || markdownLineEnding(code)) {\n return continuationStart(code)\n }\n effects.enter('htmlFlowData')\n return continuation(code)\n }\n\n /**\n * In comment continuation, after one `-`, expecting another.\n *\n * ```markdown\n * > | \n * ^\n * ```\n *\n * @type {State}\n */\n function continuationCommentInside(code) {\n if (code === 45) {\n effects.consume(code)\n return continuationDeclarationInside\n }\n return continuation(code)\n }\n\n /**\n * In raw continuation, after `<`, at `/`.\n *\n * ```markdown\n * > | \n * ^\n * ```\n *\n * @type {State}\n */\n function continuationRawTagOpen(code) {\n if (code === 47) {\n effects.consume(code)\n buffer = ''\n return continuationRawEndTag\n }\n return continuation(code)\n }\n\n /**\n * In raw continuation, after ` | \n * ^^^^^^\n * ```\n *\n * @type {State}\n */\n function continuationRawEndTag(code) {\n if (code === 62) {\n const name = buffer.toLowerCase()\n if (htmlRawNames.includes(name)) {\n effects.consume(code)\n return continuationClose\n }\n return continuation(code)\n }\n if (asciiAlpha(code) && buffer.length < 8) {\n effects.consume(code)\n // @ts-expect-error: not null.\n buffer += String.fromCharCode(code)\n return continuationRawEndTag\n }\n return continuation(code)\n }\n\n /**\n * In cdata continuation, after `]`, expecting `]>`.\n *\n * ```markdown\n * > | &<]]>\n * ^\n * ```\n *\n * @type {State}\n */\n function continuationCdataInside(code) {\n if (code === 93) {\n effects.consume(code)\n return continuationDeclarationInside\n }\n return continuation(code)\n }\n\n /**\n * In declaration or instruction continuation, at `>`.\n *\n * ```markdown\n * > | \n * ^\n * > | \n * ^\n * > | \n * ^\n * > | \n * ^\n * > | &<]]>\n * ^\n * ```\n *\n * @type {State}\n */\n function continuationDeclarationInside(code) {\n if (code === 62) {\n effects.consume(code)\n return continuationClose\n }\n\n // More dashes.\n if (code === 45 && marker === 2) {\n effects.consume(code)\n return continuationDeclarationInside\n }\n return continuation(code)\n }\n\n /**\n * In closed continuation: everything we get until the eol/eof is part of it.\n *\n * ```markdown\n * > | \n * ^\n * ```\n *\n * @type {State}\n */\n function continuationClose(code) {\n if (code === null || markdownLineEnding(code)) {\n effects.exit('htmlFlowData')\n return continuationAfter(code)\n }\n effects.consume(code)\n return continuationClose\n }\n\n /**\n * Done.\n *\n * ```markdown\n * > | \n * ^\n * ```\n *\n * @type {State}\n */\n function continuationAfter(code) {\n effects.exit('htmlFlow')\n // // Feel free to interrupt.\n // tokenizer.interrupt = false\n // // No longer concrete.\n // tokenizer.concrete = false\n return ok(code)\n }\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeNonLazyContinuationStart(effects, ok, nok) {\n const self = this\n return start\n\n /**\n * At eol, before continuation.\n *\n * ```markdown\n * > | * ```js\n * ^\n * | b\n * ```\n *\n * @type {State}\n */\n function start(code) {\n if (markdownLineEnding(code)) {\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return after\n }\n return nok(code)\n }\n\n /**\n * A continuation.\n *\n * ```markdown\n * | * ```js\n * > | b\n * ^\n * ```\n *\n * @type {State}\n */\n function after(code) {\n return self.parser.lazy[self.now().line] ? nok(code) : ok(code)\n }\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeBlankLineBefore(effects, ok, nok) {\n return start\n\n /**\n * Before eol, expecting blank line.\n *\n * ```markdown\n * > |
\n * ^\n * |\n * ```\n *\n * @type {State}\n */\n function start(code) {\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return effects.attempt(blankLine, ok, nok)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Code} Code\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {factorySpace} from 'micromark-factory-space'\nimport {markdownLineEnding, markdownSpace} from 'micromark-util-character'\n/** @type {Construct} */\nconst nonLazyContinuation = {\n tokenize: tokenizeNonLazyContinuation,\n partial: true\n}\n\n/** @type {Construct} */\nexport const codeFenced = {\n name: 'codeFenced',\n tokenize: tokenizeCodeFenced,\n concrete: true\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeCodeFenced(effects, ok, nok) {\n const self = this\n /** @type {Construct} */\n const closeStart = {\n tokenize: tokenizeCloseStart,\n partial: true\n }\n let initialPrefix = 0\n let sizeOpen = 0\n /** @type {NonNullable} */\n let marker\n return start\n\n /**\n * Start of code.\n *\n * ```markdown\n * > | ~~~js\n * ^\n * | alert(1)\n * | ~~~\n * ```\n *\n * @type {State}\n */\n function start(code) {\n // To do: parse whitespace like `markdown-rs`.\n return beforeSequenceOpen(code)\n }\n\n /**\n * In opening fence, after prefix, at sequence.\n *\n * ```markdown\n * > | ~~~js\n * ^\n * | alert(1)\n * | ~~~\n * ```\n *\n * @type {State}\n */\n function beforeSequenceOpen(code) {\n const tail = self.events[self.events.length - 1]\n initialPrefix =\n tail && tail[1].type === 'linePrefix'\n ? tail[2].sliceSerialize(tail[1], true).length\n : 0\n marker = code\n effects.enter('codeFenced')\n effects.enter('codeFencedFence')\n effects.enter('codeFencedFenceSequence')\n return sequenceOpen(code)\n }\n\n /**\n * In opening fence sequence.\n *\n * ```markdown\n * > | ~~~js\n * ^\n * | alert(1)\n * | ~~~\n * ```\n *\n * @type {State}\n */\n function sequenceOpen(code) {\n if (code === marker) {\n sizeOpen++\n effects.consume(code)\n return sequenceOpen\n }\n if (sizeOpen < 3) {\n return nok(code)\n }\n effects.exit('codeFencedFenceSequence')\n return markdownSpace(code)\n ? factorySpace(effects, infoBefore, 'whitespace')(code)\n : infoBefore(code)\n }\n\n /**\n * In opening fence, after the sequence (and optional whitespace), before info.\n *\n * ```markdown\n * > | ~~~js\n * ^\n * | alert(1)\n * | ~~~\n * ```\n *\n * @type {State}\n */\n function infoBefore(code) {\n if (code === null || markdownLineEnding(code)) {\n effects.exit('codeFencedFence')\n return self.interrupt\n ? ok(code)\n : effects.check(nonLazyContinuation, atNonLazyBreak, after)(code)\n }\n effects.enter('codeFencedFenceInfo')\n effects.enter('chunkString', {\n contentType: 'string'\n })\n return info(code)\n }\n\n /**\n * In info.\n *\n * ```markdown\n * > | ~~~js\n * ^\n * | alert(1)\n * | ~~~\n * ```\n *\n * @type {State}\n */\n function info(code) {\n if (code === null || markdownLineEnding(code)) {\n effects.exit('chunkString')\n effects.exit('codeFencedFenceInfo')\n return infoBefore(code)\n }\n if (markdownSpace(code)) {\n effects.exit('chunkString')\n effects.exit('codeFencedFenceInfo')\n return factorySpace(effects, metaBefore, 'whitespace')(code)\n }\n if (code === 96 && code === marker) {\n return nok(code)\n }\n effects.consume(code)\n return info\n }\n\n /**\n * In opening fence, after info and whitespace, before meta.\n *\n * ```markdown\n * > | ~~~js eval\n * ^\n * | alert(1)\n * | ~~~\n * ```\n *\n * @type {State}\n */\n function metaBefore(code) {\n if (code === null || markdownLineEnding(code)) {\n return infoBefore(code)\n }\n effects.enter('codeFencedFenceMeta')\n effects.enter('chunkString', {\n contentType: 'string'\n })\n return meta(code)\n }\n\n /**\n * In meta.\n *\n * ```markdown\n * > | ~~~js eval\n * ^\n * | alert(1)\n * | ~~~\n * ```\n *\n * @type {State}\n */\n function meta(code) {\n if (code === null || markdownLineEnding(code)) {\n effects.exit('chunkString')\n effects.exit('codeFencedFenceMeta')\n return infoBefore(code)\n }\n if (code === 96 && code === marker) {\n return nok(code)\n }\n effects.consume(code)\n return meta\n }\n\n /**\n * At eol/eof in code, before a non-lazy closing fence or content.\n *\n * ```markdown\n * > | ~~~js\n * ^\n * > | alert(1)\n * ^\n * | ~~~\n * ```\n *\n * @type {State}\n */\n function atNonLazyBreak(code) {\n return effects.attempt(closeStart, after, contentBefore)(code)\n }\n\n /**\n * Before code content, not a closing fence, at eol.\n *\n * ```markdown\n * | ~~~js\n * > | alert(1)\n * ^\n * | ~~~\n * ```\n *\n * @type {State}\n */\n function contentBefore(code) {\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return contentStart\n }\n\n /**\n * Before code content, not a closing fence.\n *\n * ```markdown\n * | ~~~js\n * > | alert(1)\n * ^\n * | ~~~\n * ```\n *\n * @type {State}\n */\n function contentStart(code) {\n return initialPrefix > 0 && markdownSpace(code)\n ? factorySpace(\n effects,\n beforeContentChunk,\n 'linePrefix',\n initialPrefix + 1\n )(code)\n : beforeContentChunk(code)\n }\n\n /**\n * Before code content, after optional prefix.\n *\n * ```markdown\n * | ~~~js\n * > | alert(1)\n * ^\n * | ~~~\n * ```\n *\n * @type {State}\n */\n function beforeContentChunk(code) {\n if (code === null || markdownLineEnding(code)) {\n return effects.check(nonLazyContinuation, atNonLazyBreak, after)(code)\n }\n effects.enter('codeFlowValue')\n return contentChunk(code)\n }\n\n /**\n * In code content.\n *\n * ```markdown\n * | ~~~js\n * > | alert(1)\n * ^^^^^^^^\n * | ~~~\n * ```\n *\n * @type {State}\n */\n function contentChunk(code) {\n if (code === null || markdownLineEnding(code)) {\n effects.exit('codeFlowValue')\n return beforeContentChunk(code)\n }\n effects.consume(code)\n return contentChunk\n }\n\n /**\n * After code.\n *\n * ```markdown\n * | ~~~js\n * | alert(1)\n * > | ~~~\n * ^\n * ```\n *\n * @type {State}\n */\n function after(code) {\n effects.exit('codeFenced')\n return ok(code)\n }\n\n /**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\n function tokenizeCloseStart(effects, ok, nok) {\n let size = 0\n return startBefore\n\n /**\n *\n *\n * @type {State}\n */\n function startBefore(code) {\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return start\n }\n\n /**\n * Before closing fence, at optional whitespace.\n *\n * ```markdown\n * | ~~~js\n * | alert(1)\n * > | ~~~\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n // Always populated by defaults.\n\n // To do: `enter` here or in next state?\n effects.enter('codeFencedFence')\n return markdownSpace(code)\n ? factorySpace(\n effects,\n beforeSequenceClose,\n 'linePrefix',\n self.parser.constructs.disable.null.includes('codeIndented')\n ? undefined\n : 4\n )(code)\n : beforeSequenceClose(code)\n }\n\n /**\n * In closing fence, after optional whitespace, at sequence.\n *\n * ```markdown\n * | ~~~js\n * | alert(1)\n * > | ~~~\n * ^\n * ```\n *\n * @type {State}\n */\n function beforeSequenceClose(code) {\n if (code === marker) {\n effects.enter('codeFencedFenceSequence')\n return sequenceClose(code)\n }\n return nok(code)\n }\n\n /**\n * In closing fence sequence.\n *\n * ```markdown\n * | ~~~js\n * | alert(1)\n * > | ~~~\n * ^\n * ```\n *\n * @type {State}\n */\n function sequenceClose(code) {\n if (code === marker) {\n size++\n effects.consume(code)\n return sequenceClose\n }\n if (size >= sizeOpen) {\n effects.exit('codeFencedFenceSequence')\n return markdownSpace(code)\n ? factorySpace(effects, sequenceCloseAfter, 'whitespace')(code)\n : sequenceCloseAfter(code)\n }\n return nok(code)\n }\n\n /**\n * After closing fence sequence, after optional whitespace.\n *\n * ```markdown\n * | ~~~js\n * | alert(1)\n * > | ~~~\n * ^\n * ```\n *\n * @type {State}\n */\n function sequenceCloseAfter(code) {\n if (code === null || markdownLineEnding(code)) {\n effects.exit('codeFencedFence')\n return ok(code)\n }\n return nok(code)\n }\n }\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeNonLazyContinuation(effects, ok, nok) {\n const self = this\n return start\n\n /**\n *\n *\n * @type {State}\n */\n function start(code) {\n if (code === null) {\n return nok(code)\n }\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return lineStart\n }\n\n /**\n *\n *\n * @type {State}\n */\n function lineStart(code) {\n return self.parser.lazy[self.now().line] ? nok(code) : ok(code)\n }\n}\n","/// \n\n/* eslint-env browser */\n\nconst element = document.createElement('i')\n\n/**\n * @param {string} value\n * @returns {string|false}\n */\nexport function decodeNamedCharacterReference(value) {\n const characterReference = '&' + value + ';'\n element.innerHTML = characterReference\n const char = element.textContent\n\n // Some named character references do not require the closing semicolon\n // (`¬`, for instance), which leads to situations where parsing the assumed\n // named reference of `¬it;` will result in the string `¬it;`.\n // When we encounter a trailing semicolon after parsing, and the character\n // reference to decode was not a semicolon (`;`), we can assume that the\n // matching was not complete.\n // @ts-expect-error: TypeScript is wrong that `textContent` on elements can\n // yield `null`.\n if (char.charCodeAt(char.length - 1) === 59 /* `;` */ && value !== 'semi') {\n return false\n }\n\n // If the decoded string is equal to the input, the character reference was\n // not valid.\n // @ts-expect-error: TypeScript is wrong that `textContent` on elements can\n // yield `null`.\n return char === characterReference ? false : char\n}\n","/**\n * @typedef {import('micromark-util-types').Code} Code\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {decodeNamedCharacterReference} from 'decode-named-character-reference'\nimport {\n asciiAlphanumeric,\n asciiDigit,\n asciiHexDigit\n} from 'micromark-util-character'\n/** @type {Construct} */\nexport const characterReference = {\n name: 'characterReference',\n tokenize: tokenizeCharacterReference\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeCharacterReference(effects, ok, nok) {\n const self = this\n let size = 0\n /** @type {number} */\n let max\n /** @type {(code: Code) => boolean} */\n let test\n return start\n\n /**\n * Start of character reference.\n *\n * ```markdown\n * > | a&b\n * ^\n * > | a{b\n * ^\n * > | a b\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n effects.enter('characterReference')\n effects.enter('characterReferenceMarker')\n effects.consume(code)\n effects.exit('characterReferenceMarker')\n return open\n }\n\n /**\n * After `&`, at `#` for numeric references or alphanumeric for named\n * references.\n *\n * ```markdown\n * > | a&b\n * ^\n * > | a{b\n * ^\n * > | a b\n * ^\n * ```\n *\n * @type {State}\n */\n function open(code) {\n if (code === 35) {\n effects.enter('characterReferenceMarkerNumeric')\n effects.consume(code)\n effects.exit('characterReferenceMarkerNumeric')\n return numeric\n }\n effects.enter('characterReferenceValue')\n max = 31\n test = asciiAlphanumeric\n return value(code)\n }\n\n /**\n * After `#`, at `x` for hexadecimals or digit for decimals.\n *\n * ```markdown\n * > | a{b\n * ^\n * > | a b\n * ^\n * ```\n *\n * @type {State}\n */\n function numeric(code) {\n if (code === 88 || code === 120) {\n effects.enter('characterReferenceMarkerHexadecimal')\n effects.consume(code)\n effects.exit('characterReferenceMarkerHexadecimal')\n effects.enter('characterReferenceValue')\n max = 6\n test = asciiHexDigit\n return value\n }\n effects.enter('characterReferenceValue')\n max = 7\n test = asciiDigit\n return value(code)\n }\n\n /**\n * After markers (`&#x`, `&#`, or `&`), in value, before `;`.\n *\n * The character reference kind defines what and how many characters are\n * allowed.\n *\n * ```markdown\n * > | a&b\n * ^^^\n * > | a{b\n * ^^^\n * > | a b\n * ^\n * ```\n *\n * @type {State}\n */\n function value(code) {\n if (code === 59 && size) {\n const token = effects.exit('characterReferenceValue')\n if (\n test === asciiAlphanumeric &&\n !decodeNamedCharacterReference(self.sliceSerialize(token))\n ) {\n return nok(code)\n }\n\n // To do: `markdown-rs` uses a different name:\n // `CharacterReferenceMarkerSemi`.\n effects.enter('characterReferenceMarker')\n effects.consume(code)\n effects.exit('characterReferenceMarker')\n effects.exit('characterReference')\n return ok\n }\n if (test(code) && size++ < max) {\n effects.consume(code)\n return value\n }\n return nok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {asciiPunctuation} from 'micromark-util-character'\n/** @type {Construct} */\nexport const characterEscape = {\n name: 'characterEscape',\n tokenize: tokenizeCharacterEscape\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeCharacterEscape(effects, ok, nok) {\n return start\n\n /**\n * Start of character escape.\n *\n * ```markdown\n * > | a\\*b\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n effects.enter('characterEscape')\n effects.enter('escapeMarker')\n effects.consume(code)\n effects.exit('escapeMarker')\n return inside\n }\n\n /**\n * After `\\`, at punctuation.\n *\n * ```markdown\n * > | a\\*b\n * ^\n * ```\n *\n * @type {State}\n */\n function inside(code) {\n // ASCII punctuation.\n if (asciiPunctuation(code)) {\n effects.enter('characterEscapeValue')\n effects.consume(code)\n effects.exit('characterEscapeValue')\n effects.exit('characterEscape')\n return ok\n }\n return nok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {factorySpace} from 'micromark-factory-space'\nimport {markdownLineEnding} from 'micromark-util-character'\n/** @type {Construct} */\nexport const lineEnding = {\n name: 'lineEnding',\n tokenize: tokenizeLineEnding\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeLineEnding(effects, ok) {\n return start\n\n /** @type {State} */\n function start(code) {\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return factorySpace(effects, ok, 'linePrefix')\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Event} Event\n * @typedef {import('micromark-util-types').Resolver} Resolver\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').Token} Token\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {factoryDestination} from 'micromark-factory-destination'\nimport {factoryLabel} from 'micromark-factory-label'\nimport {factoryTitle} from 'micromark-factory-title'\nimport {factoryWhitespace} from 'micromark-factory-whitespace'\nimport {markdownLineEndingOrSpace} from 'micromark-util-character'\nimport {push, splice} from 'micromark-util-chunked'\nimport {normalizeIdentifier} from 'micromark-util-normalize-identifier'\nimport {resolveAll} from 'micromark-util-resolve-all'\n/** @type {Construct} */\nexport const labelEnd = {\n name: 'labelEnd',\n tokenize: tokenizeLabelEnd,\n resolveTo: resolveToLabelEnd,\n resolveAll: resolveAllLabelEnd\n}\n\n/** @type {Construct} */\nconst resourceConstruct = {\n tokenize: tokenizeResource\n}\n/** @type {Construct} */\nconst referenceFullConstruct = {\n tokenize: tokenizeReferenceFull\n}\n/** @type {Construct} */\nconst referenceCollapsedConstruct = {\n tokenize: tokenizeReferenceCollapsed\n}\n\n/** @type {Resolver} */\nfunction resolveAllLabelEnd(events) {\n let index = -1\n while (++index < events.length) {\n const token = events[index][1]\n if (\n token.type === 'labelImage' ||\n token.type === 'labelLink' ||\n token.type === 'labelEnd'\n ) {\n // Remove the marker.\n events.splice(index + 1, token.type === 'labelImage' ? 4 : 2)\n token.type = 'data'\n index++\n }\n }\n return events\n}\n\n/** @type {Resolver} */\nfunction resolveToLabelEnd(events, context) {\n let index = events.length\n let offset = 0\n /** @type {Token} */\n let token\n /** @type {number | undefined} */\n let open\n /** @type {number | undefined} */\n let close\n /** @type {Array} */\n let media\n\n // Find an opening.\n while (index--) {\n token = events[index][1]\n if (open) {\n // If we see another link, or inactive link label, we’ve been here before.\n if (\n token.type === 'link' ||\n (token.type === 'labelLink' && token._inactive)\n ) {\n break\n }\n\n // Mark other link openings as inactive, as we can’t have links in\n // links.\n if (events[index][0] === 'enter' && token.type === 'labelLink') {\n token._inactive = true\n }\n } else if (close) {\n if (\n events[index][0] === 'enter' &&\n (token.type === 'labelImage' || token.type === 'labelLink') &&\n !token._balanced\n ) {\n open = index\n if (token.type !== 'labelLink') {\n offset = 2\n break\n }\n }\n } else if (token.type === 'labelEnd') {\n close = index\n }\n }\n const group = {\n type: events[open][1].type === 'labelLink' ? 'link' : 'image',\n start: Object.assign({}, events[open][1].start),\n end: Object.assign({}, events[events.length - 1][1].end)\n }\n const label = {\n type: 'label',\n start: Object.assign({}, events[open][1].start),\n end: Object.assign({}, events[close][1].end)\n }\n const text = {\n type: 'labelText',\n start: Object.assign({}, events[open + offset + 2][1].end),\n end: Object.assign({}, events[close - 2][1].start)\n }\n media = [\n ['enter', group, context],\n ['enter', label, context]\n ]\n\n // Opening marker.\n media = push(media, events.slice(open + 1, open + offset + 3))\n\n // Text open.\n media = push(media, [['enter', text, context]])\n\n // Always populated by defaults.\n\n // Between.\n media = push(\n media,\n resolveAll(\n context.parser.constructs.insideSpan.null,\n events.slice(open + offset + 4, close - 3),\n context\n )\n )\n\n // Text close, marker close, label close.\n media = push(media, [\n ['exit', text, context],\n events[close - 2],\n events[close - 1],\n ['exit', label, context]\n ])\n\n // Reference, resource, or so.\n media = push(media, events.slice(close + 1))\n\n // Media close.\n media = push(media, [['exit', group, context]])\n splice(events, open, events.length, media)\n return events\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeLabelEnd(effects, ok, nok) {\n const self = this\n let index = self.events.length\n /** @type {Token} */\n let labelStart\n /** @type {boolean} */\n let defined\n\n // Find an opening.\n while (index--) {\n if (\n (self.events[index][1].type === 'labelImage' ||\n self.events[index][1].type === 'labelLink') &&\n !self.events[index][1]._balanced\n ) {\n labelStart = self.events[index][1]\n break\n }\n }\n return start\n\n /**\n * Start of label end.\n *\n * ```markdown\n * > | [a](b) c\n * ^\n * > | [a][b] c\n * ^\n * > | [a][] b\n * ^\n * > | [a] b\n * ```\n *\n * @type {State}\n */\n function start(code) {\n // If there is not an okay opening.\n if (!labelStart) {\n return nok(code)\n }\n\n // If the corresponding label (link) start is marked as inactive,\n // it means we’d be wrapping a link, like this:\n //\n // ```markdown\n // > | a [b [c](d) e](f) g.\n // ^\n // ```\n //\n // We can’t have that, so it’s just balanced brackets.\n if (labelStart._inactive) {\n return labelEndNok(code)\n }\n defined = self.parser.defined.includes(\n normalizeIdentifier(\n self.sliceSerialize({\n start: labelStart.end,\n end: self.now()\n })\n )\n )\n effects.enter('labelEnd')\n effects.enter('labelMarker')\n effects.consume(code)\n effects.exit('labelMarker')\n effects.exit('labelEnd')\n return after\n }\n\n /**\n * After `]`.\n *\n * ```markdown\n * > | [a](b) c\n * ^\n * > | [a][b] c\n * ^\n * > | [a][] b\n * ^\n * > | [a] b\n * ^\n * ```\n *\n * @type {State}\n */\n function after(code) {\n // Note: `markdown-rs` also parses GFM footnotes here, which for us is in\n // an extension.\n\n // Resource (`[asd](fgh)`)?\n if (code === 40) {\n return effects.attempt(\n resourceConstruct,\n labelEndOk,\n defined ? labelEndOk : labelEndNok\n )(code)\n }\n\n // Full (`[asd][fgh]`) or collapsed (`[asd][]`) reference?\n if (code === 91) {\n return effects.attempt(\n referenceFullConstruct,\n labelEndOk,\n defined ? referenceNotFull : labelEndNok\n )(code)\n }\n\n // Shortcut (`[asd]`) reference?\n return defined ? labelEndOk(code) : labelEndNok(code)\n }\n\n /**\n * After `]`, at `[`, but not at a full reference.\n *\n * > 👉 **Note**: we only get here if the label is defined.\n *\n * ```markdown\n * > | [a][] b\n * ^\n * > | [a] b\n * ^\n * ```\n *\n * @type {State}\n */\n function referenceNotFull(code) {\n return effects.attempt(\n referenceCollapsedConstruct,\n labelEndOk,\n labelEndNok\n )(code)\n }\n\n /**\n * Done, we found something.\n *\n * ```markdown\n * > | [a](b) c\n * ^\n * > | [a][b] c\n * ^\n * > | [a][] b\n * ^\n * > | [a] b\n * ^\n * ```\n *\n * @type {State}\n */\n function labelEndOk(code) {\n // Note: `markdown-rs` does a bunch of stuff here.\n return ok(code)\n }\n\n /**\n * Done, it’s nothing.\n *\n * There was an okay opening, but we didn’t match anything.\n *\n * ```markdown\n * > | [a](b c\n * ^\n * > | [a][b c\n * ^\n * > | [a] b\n * ^\n * ```\n *\n * @type {State}\n */\n function labelEndNok(code) {\n labelStart._balanced = true\n return nok(code)\n }\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeResource(effects, ok, nok) {\n return resourceStart\n\n /**\n * At a resource.\n *\n * ```markdown\n * > | [a](b) c\n * ^\n * ```\n *\n * @type {State}\n */\n function resourceStart(code) {\n effects.enter('resource')\n effects.enter('resourceMarker')\n effects.consume(code)\n effects.exit('resourceMarker')\n return resourceBefore\n }\n\n /**\n * In resource, after `(`, at optional whitespace.\n *\n * ```markdown\n * > | [a](b) c\n * ^\n * ```\n *\n * @type {State}\n */\n function resourceBefore(code) {\n return markdownLineEndingOrSpace(code)\n ? factoryWhitespace(effects, resourceOpen)(code)\n : resourceOpen(code)\n }\n\n /**\n * In resource, after optional whitespace, at `)` or a destination.\n *\n * ```markdown\n * > | [a](b) c\n * ^\n * ```\n *\n * @type {State}\n */\n function resourceOpen(code) {\n if (code === 41) {\n return resourceEnd(code)\n }\n return factoryDestination(\n effects,\n resourceDestinationAfter,\n resourceDestinationMissing,\n 'resourceDestination',\n 'resourceDestinationLiteral',\n 'resourceDestinationLiteralMarker',\n 'resourceDestinationRaw',\n 'resourceDestinationString',\n 32\n )(code)\n }\n\n /**\n * In resource, after destination, at optional whitespace.\n *\n * ```markdown\n * > | [a](b) c\n * ^\n * ```\n *\n * @type {State}\n */\n function resourceDestinationAfter(code) {\n return markdownLineEndingOrSpace(code)\n ? factoryWhitespace(effects, resourceBetween)(code)\n : resourceEnd(code)\n }\n\n /**\n * At invalid destination.\n *\n * ```markdown\n * > | [a](<<) b\n * ^\n * ```\n *\n * @type {State}\n */\n function resourceDestinationMissing(code) {\n return nok(code)\n }\n\n /**\n * In resource, after destination and whitespace, at `(` or title.\n *\n * ```markdown\n * > | [a](b ) c\n * ^\n * ```\n *\n * @type {State}\n */\n function resourceBetween(code) {\n if (code === 34 || code === 39 || code === 40) {\n return factoryTitle(\n effects,\n resourceTitleAfter,\n nok,\n 'resourceTitle',\n 'resourceTitleMarker',\n 'resourceTitleString'\n )(code)\n }\n return resourceEnd(code)\n }\n\n /**\n * In resource, after title, at optional whitespace.\n *\n * ```markdown\n * > | [a](b \"c\") d\n * ^\n * ```\n *\n * @type {State}\n */\n function resourceTitleAfter(code) {\n return markdownLineEndingOrSpace(code)\n ? factoryWhitespace(effects, resourceEnd)(code)\n : resourceEnd(code)\n }\n\n /**\n * In resource, at `)`.\n *\n * ```markdown\n * > | [a](b) d\n * ^\n * ```\n *\n * @type {State}\n */\n function resourceEnd(code) {\n if (code === 41) {\n effects.enter('resourceMarker')\n effects.consume(code)\n effects.exit('resourceMarker')\n effects.exit('resource')\n return ok\n }\n return nok(code)\n }\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeReferenceFull(effects, ok, nok) {\n const self = this\n return referenceFull\n\n /**\n * In a reference (full), at the `[`.\n *\n * ```markdown\n * > | [a][b] d\n * ^\n * ```\n *\n * @type {State}\n */\n function referenceFull(code) {\n return factoryLabel.call(\n self,\n effects,\n referenceFullAfter,\n referenceFullMissing,\n 'reference',\n 'referenceMarker',\n 'referenceString'\n )(code)\n }\n\n /**\n * In a reference (full), after `]`.\n *\n * ```markdown\n * > | [a][b] d\n * ^\n * ```\n *\n * @type {State}\n */\n function referenceFullAfter(code) {\n return self.parser.defined.includes(\n normalizeIdentifier(\n self.sliceSerialize(self.events[self.events.length - 1][1]).slice(1, -1)\n )\n )\n ? ok(code)\n : nok(code)\n }\n\n /**\n * In reference (full) that was missing.\n *\n * ```markdown\n * > | [a][b d\n * ^\n * ```\n *\n * @type {State}\n */\n function referenceFullMissing(code) {\n return nok(code)\n }\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeReferenceCollapsed(effects, ok, nok) {\n return referenceCollapsedStart\n\n /**\n * In reference (collapsed), at `[`.\n *\n * > 👉 **Note**: we only get here if the label is defined.\n *\n * ```markdown\n * > | [a][] d\n * ^\n * ```\n *\n * @type {State}\n */\n function referenceCollapsedStart(code) {\n // We only attempt a collapsed label if there’s a `[`.\n\n effects.enter('reference')\n effects.enter('referenceMarker')\n effects.consume(code)\n effects.exit('referenceMarker')\n return referenceCollapsedOpen\n }\n\n /**\n * In reference (collapsed), at `]`.\n *\n * > 👉 **Note**: we only get here if the label is defined.\n *\n * ```markdown\n * > | [a][] d\n * ^\n * ```\n *\n * @type {State}\n */\n function referenceCollapsedOpen(code) {\n if (code === 93) {\n effects.enter('referenceMarker')\n effects.consume(code)\n effects.exit('referenceMarker')\n effects.exit('reference')\n return ok\n }\n return nok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {labelEnd} from './label-end.js'\n\n/** @type {Construct} */\nexport const labelStartImage = {\n name: 'labelStartImage',\n tokenize: tokenizeLabelStartImage,\n resolveAll: labelEnd.resolveAll\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeLabelStartImage(effects, ok, nok) {\n const self = this\n return start\n\n /**\n * Start of label (image) start.\n *\n * ```markdown\n * > | a ![b] c\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n effects.enter('labelImage')\n effects.enter('labelImageMarker')\n effects.consume(code)\n effects.exit('labelImageMarker')\n return open\n }\n\n /**\n * After `!`, at `[`.\n *\n * ```markdown\n * > | a ![b] c\n * ^\n * ```\n *\n * @type {State}\n */\n function open(code) {\n if (code === 91) {\n effects.enter('labelMarker')\n effects.consume(code)\n effects.exit('labelMarker')\n effects.exit('labelImage')\n return after\n }\n return nok(code)\n }\n\n /**\n * After `![`.\n *\n * ```markdown\n * > | a ![b] c\n * ^\n * ```\n *\n * This is needed in because, when GFM footnotes are enabled, images never\n * form when started with a `^`.\n * Instead, links form:\n *\n * ```markdown\n * ![^a](b)\n *\n * ![^a][b]\n *\n * [b]: c\n * ```\n *\n * ```html\n *

!^a

\n *

!^a

\n * ```\n *\n * @type {State}\n */\n function after(code) {\n // To do: use a new field to do this, this is still needed for\n // `micromark-extension-gfm-footnote`, but the `label-start-link`\n // behavior isn’t.\n // Hidden footnotes hook.\n /* c8 ignore next 3 */\n return code === 94 && '_hiddenFootnoteSupport' in self.parser.constructs\n ? nok(code)\n : ok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Code} Code\n */\n\nimport {\n markdownLineEndingOrSpace,\n unicodePunctuation,\n unicodeWhitespace\n} from 'micromark-util-character'\n/**\n * Classify whether a code represents whitespace, punctuation, or something\n * else.\n *\n * Used for attention (emphasis, strong), whose sequences can open or close\n * based on the class of surrounding characters.\n *\n * > 👉 **Note**: eof (`null`) is seen as whitespace.\n *\n * @param {Code} code\n * Code.\n * @returns {typeof constants.characterGroupWhitespace | typeof constants.characterGroupPunctuation | undefined}\n * Group.\n */\nexport function classifyCharacter(code) {\n if (\n code === null ||\n markdownLineEndingOrSpace(code) ||\n unicodeWhitespace(code)\n ) {\n return 1\n }\n if (unicodePunctuation(code)) {\n return 2\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Code} Code\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Event} Event\n * @typedef {import('micromark-util-types').Point} Point\n * @typedef {import('micromark-util-types').Resolver} Resolver\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').Token} Token\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {push, splice} from 'micromark-util-chunked'\nimport {classifyCharacter} from 'micromark-util-classify-character'\nimport {resolveAll} from 'micromark-util-resolve-all'\n/** @type {Construct} */\nexport const attention = {\n name: 'attention',\n tokenize: tokenizeAttention,\n resolveAll: resolveAllAttention\n}\n\n/**\n * Take all events and resolve attention to emphasis or strong.\n *\n * @type {Resolver}\n */\nfunction resolveAllAttention(events, context) {\n let index = -1\n /** @type {number} */\n let open\n /** @type {Token} */\n let group\n /** @type {Token} */\n let text\n /** @type {Token} */\n let openingSequence\n /** @type {Token} */\n let closingSequence\n /** @type {number} */\n let use\n /** @type {Array} */\n let nextEvents\n /** @type {number} */\n let offset\n\n // Walk through all events.\n //\n // Note: performance of this is fine on an mb of normal markdown, but it’s\n // a bottleneck for malicious stuff.\n while (++index < events.length) {\n // Find a token that can close.\n if (\n events[index][0] === 'enter' &&\n events[index][1].type === 'attentionSequence' &&\n events[index][1]._close\n ) {\n open = index\n\n // Now walk back to find an opener.\n while (open--) {\n // Find a token that can open the closer.\n if (\n events[open][0] === 'exit' &&\n events[open][1].type === 'attentionSequence' &&\n events[open][1]._open &&\n // If the markers are the same:\n context.sliceSerialize(events[open][1]).charCodeAt(0) ===\n context.sliceSerialize(events[index][1]).charCodeAt(0)\n ) {\n // If the opening can close or the closing can open,\n // and the close size *is not* a multiple of three,\n // but the sum of the opening and closing size *is* multiple of three,\n // then don’t match.\n if (\n (events[open][1]._close || events[index][1]._open) &&\n (events[index][1].end.offset - events[index][1].start.offset) % 3 &&\n !(\n (events[open][1].end.offset -\n events[open][1].start.offset +\n events[index][1].end.offset -\n events[index][1].start.offset) %\n 3\n )\n ) {\n continue\n }\n\n // Number of markers to use from the sequence.\n use =\n events[open][1].end.offset - events[open][1].start.offset > 1 &&\n events[index][1].end.offset - events[index][1].start.offset > 1\n ? 2\n : 1\n const start = Object.assign({}, events[open][1].end)\n const end = Object.assign({}, events[index][1].start)\n movePoint(start, -use)\n movePoint(end, use)\n openingSequence = {\n type: use > 1 ? 'strongSequence' : 'emphasisSequence',\n start,\n end: Object.assign({}, events[open][1].end)\n }\n closingSequence = {\n type: use > 1 ? 'strongSequence' : 'emphasisSequence',\n start: Object.assign({}, events[index][1].start),\n end\n }\n text = {\n type: use > 1 ? 'strongText' : 'emphasisText',\n start: Object.assign({}, events[open][1].end),\n end: Object.assign({}, events[index][1].start)\n }\n group = {\n type: use > 1 ? 'strong' : 'emphasis',\n start: Object.assign({}, openingSequence.start),\n end: Object.assign({}, closingSequence.end)\n }\n events[open][1].end = Object.assign({}, openingSequence.start)\n events[index][1].start = Object.assign({}, closingSequence.end)\n nextEvents = []\n\n // If there are more markers in the opening, add them before.\n if (events[open][1].end.offset - events[open][1].start.offset) {\n nextEvents = push(nextEvents, [\n ['enter', events[open][1], context],\n ['exit', events[open][1], context]\n ])\n }\n\n // Opening.\n nextEvents = push(nextEvents, [\n ['enter', group, context],\n ['enter', openingSequence, context],\n ['exit', openingSequence, context],\n ['enter', text, context]\n ])\n\n // Always populated by defaults.\n\n // Between.\n nextEvents = push(\n nextEvents,\n resolveAll(\n context.parser.constructs.insideSpan.null,\n events.slice(open + 1, index),\n context\n )\n )\n\n // Closing.\n nextEvents = push(nextEvents, [\n ['exit', text, context],\n ['enter', closingSequence, context],\n ['exit', closingSequence, context],\n ['exit', group, context]\n ])\n\n // If there are more markers in the closing, add them after.\n if (events[index][1].end.offset - events[index][1].start.offset) {\n offset = 2\n nextEvents = push(nextEvents, [\n ['enter', events[index][1], context],\n ['exit', events[index][1], context]\n ])\n } else {\n offset = 0\n }\n splice(events, open - 1, index - open + 3, nextEvents)\n index = open + nextEvents.length - offset - 2\n break\n }\n }\n }\n }\n\n // Remove remaining sequences.\n index = -1\n while (++index < events.length) {\n if (events[index][1].type === 'attentionSequence') {\n events[index][1].type = 'data'\n }\n }\n return events\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeAttention(effects, ok) {\n const attentionMarkers = this.parser.constructs.attentionMarkers.null\n const previous = this.previous\n const before = classifyCharacter(previous)\n\n /** @type {NonNullable} */\n let marker\n return start\n\n /**\n * Before a sequence.\n *\n * ```markdown\n * > | **\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n marker = code\n effects.enter('attentionSequence')\n return inside(code)\n }\n\n /**\n * In a sequence.\n *\n * ```markdown\n * > | **\n * ^^\n * ```\n *\n * @type {State}\n */\n function inside(code) {\n if (code === marker) {\n effects.consume(code)\n return inside\n }\n const token = effects.exit('attentionSequence')\n\n // To do: next major: move this to resolver, just like `markdown-rs`.\n const after = classifyCharacter(code)\n\n // Always populated by defaults.\n\n const open =\n !after || (after === 2 && before) || attentionMarkers.includes(code)\n const close =\n !before || (before === 2 && after) || attentionMarkers.includes(previous)\n token._open = Boolean(marker === 42 ? open : open && (before || !close))\n token._close = Boolean(marker === 42 ? close : close && (after || !open))\n return ok(code)\n }\n}\n\n/**\n * Move a point a bit.\n *\n * Note: `move` only works inside lines! It’s not possible to move past other\n * chunks (replacement characters, tabs, or line endings).\n *\n * @param {Point} point\n * @param {number} offset\n * @returns {void}\n */\nfunction movePoint(point, offset) {\n point.column += offset\n point.offset += offset\n point._bufferIndex += offset\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {\n asciiAlpha,\n asciiAlphanumeric,\n asciiAtext,\n asciiControl\n} from 'micromark-util-character'\n/** @type {Construct} */\nexport const autolink = {\n name: 'autolink',\n tokenize: tokenizeAutolink\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeAutolink(effects, ok, nok) {\n let size = 0\n return start\n\n /**\n * Start of an autolink.\n *\n * ```markdown\n * > | ab\n * ^\n * > | ab\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n effects.enter('autolink')\n effects.enter('autolinkMarker')\n effects.consume(code)\n effects.exit('autolinkMarker')\n effects.enter('autolinkProtocol')\n return open\n }\n\n /**\n * After `<`, at protocol or atext.\n *\n * ```markdown\n * > | ab\n * ^\n * > | ab\n * ^\n * ```\n *\n * @type {State}\n */\n function open(code) {\n if (asciiAlpha(code)) {\n effects.consume(code)\n return schemeOrEmailAtext\n }\n return emailAtext(code)\n }\n\n /**\n * At second byte of protocol or atext.\n *\n * ```markdown\n * > | ab\n * ^\n * > | ab\n * ^\n * ```\n *\n * @type {State}\n */\n function schemeOrEmailAtext(code) {\n // ASCII alphanumeric and `+`, `-`, and `.`.\n if (code === 43 || code === 45 || code === 46 || asciiAlphanumeric(code)) {\n // Count the previous alphabetical from `open` too.\n size = 1\n return schemeInsideOrEmailAtext(code)\n }\n return emailAtext(code)\n }\n\n /**\n * In ambiguous protocol or atext.\n *\n * ```markdown\n * > | ab\n * ^\n * > | ab\n * ^\n * ```\n *\n * @type {State}\n */\n function schemeInsideOrEmailAtext(code) {\n if (code === 58) {\n effects.consume(code)\n size = 0\n return urlInside\n }\n\n // ASCII alphanumeric and `+`, `-`, and `.`.\n if (\n (code === 43 || code === 45 || code === 46 || asciiAlphanumeric(code)) &&\n size++ < 32\n ) {\n effects.consume(code)\n return schemeInsideOrEmailAtext\n }\n size = 0\n return emailAtext(code)\n }\n\n /**\n * After protocol, in URL.\n *\n * ```markdown\n * > | ab\n * ^\n * ```\n *\n * @type {State}\n */\n function urlInside(code) {\n if (code === 62) {\n effects.exit('autolinkProtocol')\n effects.enter('autolinkMarker')\n effects.consume(code)\n effects.exit('autolinkMarker')\n effects.exit('autolink')\n return ok\n }\n\n // ASCII control, space, or `<`.\n if (code === null || code === 32 || code === 60 || asciiControl(code)) {\n return nok(code)\n }\n effects.consume(code)\n return urlInside\n }\n\n /**\n * In email atext.\n *\n * ```markdown\n * > | ab\n * ^\n * ```\n *\n * @type {State}\n */\n function emailAtext(code) {\n if (code === 64) {\n effects.consume(code)\n return emailAtSignOrDot\n }\n if (asciiAtext(code)) {\n effects.consume(code)\n return emailAtext\n }\n return nok(code)\n }\n\n /**\n * In label, after at-sign or dot.\n *\n * ```markdown\n * > | ab\n * ^ ^\n * ```\n *\n * @type {State}\n */\n function emailAtSignOrDot(code) {\n return asciiAlphanumeric(code) ? emailLabel(code) : nok(code)\n }\n\n /**\n * In label, where `.` and `>` are allowed.\n *\n * ```markdown\n * > | ab\n * ^\n * ```\n *\n * @type {State}\n */\n function emailLabel(code) {\n if (code === 46) {\n effects.consume(code)\n size = 0\n return emailAtSignOrDot\n }\n if (code === 62) {\n // Exit, then change the token type.\n effects.exit('autolinkProtocol').type = 'autolinkEmail'\n effects.enter('autolinkMarker')\n effects.consume(code)\n effects.exit('autolinkMarker')\n effects.exit('autolink')\n return ok\n }\n return emailValue(code)\n }\n\n /**\n * In label, where `.` and `>` are *not* allowed.\n *\n * Though, this is also used in `emailLabel` to parse other values.\n *\n * ```markdown\n * > | ab\n * ^\n * ```\n *\n * @type {State}\n */\n function emailValue(code) {\n // ASCII alphanumeric or `-`.\n if ((code === 45 || asciiAlphanumeric(code)) && size++ < 63) {\n const next = code === 45 ? emailValue : emailLabel\n effects.consume(code)\n return next\n }\n return nok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Code} Code\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {factorySpace} from 'micromark-factory-space'\nimport {\n asciiAlpha,\n asciiAlphanumeric,\n markdownLineEnding,\n markdownLineEndingOrSpace,\n markdownSpace\n} from 'micromark-util-character'\n/** @type {Construct} */\nexport const htmlText = {\n name: 'htmlText',\n tokenize: tokenizeHtmlText\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeHtmlText(effects, ok, nok) {\n const self = this\n /** @type {NonNullable | undefined} */\n let marker\n /** @type {number} */\n let index\n /** @type {State} */\n let returnState\n return start\n\n /**\n * Start of HTML (text).\n *\n * ```markdown\n * > | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n effects.enter('htmlText')\n effects.enter('htmlTextData')\n effects.consume(code)\n return open\n }\n\n /**\n * After `<`, at tag name or other stuff.\n *\n * ```markdown\n * > | a c\n * ^\n * > | a c\n * ^\n * > | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function open(code) {\n if (code === 33) {\n effects.consume(code)\n return declarationOpen\n }\n if (code === 47) {\n effects.consume(code)\n return tagCloseStart\n }\n if (code === 63) {\n effects.consume(code)\n return instruction\n }\n\n // ASCII alphabetical.\n if (asciiAlpha(code)) {\n effects.consume(code)\n return tagOpen\n }\n return nok(code)\n }\n\n /**\n * After ` | a c\n * ^\n * > | a c\n * ^\n * > | a &<]]> c\n * ^\n * ```\n *\n * @type {State}\n */\n function declarationOpen(code) {\n if (code === 45) {\n effects.consume(code)\n return commentOpenInside\n }\n if (code === 91) {\n effects.consume(code)\n index = 0\n return cdataOpenInside\n }\n if (asciiAlpha(code)) {\n effects.consume(code)\n return declaration\n }\n return nok(code)\n }\n\n /**\n * In a comment, after ` | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function commentOpenInside(code) {\n if (code === 45) {\n effects.consume(code)\n return commentEnd\n }\n return nok(code)\n }\n\n /**\n * In comment.\n *\n * ```markdown\n * > | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function comment(code) {\n if (code === null) {\n return nok(code)\n }\n if (code === 45) {\n effects.consume(code)\n return commentClose\n }\n if (markdownLineEnding(code)) {\n returnState = comment\n return lineEndingBefore(code)\n }\n effects.consume(code)\n return comment\n }\n\n /**\n * In comment, after `-`.\n *\n * ```markdown\n * > | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function commentClose(code) {\n if (code === 45) {\n effects.consume(code)\n return commentEnd\n }\n return comment(code)\n }\n\n /**\n * In comment, after `--`.\n *\n * ```markdown\n * > | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function commentEnd(code) {\n return code === 62\n ? end(code)\n : code === 45\n ? commentClose(code)\n : comment(code)\n }\n\n /**\n * After ` | a &<]]> b\n * ^^^^^^\n * ```\n *\n * @type {State}\n */\n function cdataOpenInside(code) {\n const value = 'CDATA['\n if (code === value.charCodeAt(index++)) {\n effects.consume(code)\n return index === value.length ? cdata : cdataOpenInside\n }\n return nok(code)\n }\n\n /**\n * In CDATA.\n *\n * ```markdown\n * > | a &<]]> b\n * ^^^\n * ```\n *\n * @type {State}\n */\n function cdata(code) {\n if (code === null) {\n return nok(code)\n }\n if (code === 93) {\n effects.consume(code)\n return cdataClose\n }\n if (markdownLineEnding(code)) {\n returnState = cdata\n return lineEndingBefore(code)\n }\n effects.consume(code)\n return cdata\n }\n\n /**\n * In CDATA, after `]`, at another `]`.\n *\n * ```markdown\n * > | a &<]]> b\n * ^\n * ```\n *\n * @type {State}\n */\n function cdataClose(code) {\n if (code === 93) {\n effects.consume(code)\n return cdataEnd\n }\n return cdata(code)\n }\n\n /**\n * In CDATA, after `]]`, at `>`.\n *\n * ```markdown\n * > | a &<]]> b\n * ^\n * ```\n *\n * @type {State}\n */\n function cdataEnd(code) {\n if (code === 62) {\n return end(code)\n }\n if (code === 93) {\n effects.consume(code)\n return cdataEnd\n }\n return cdata(code)\n }\n\n /**\n * In declaration.\n *\n * ```markdown\n * > | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function declaration(code) {\n if (code === null || code === 62) {\n return end(code)\n }\n if (markdownLineEnding(code)) {\n returnState = declaration\n return lineEndingBefore(code)\n }\n effects.consume(code)\n return declaration\n }\n\n /**\n * In instruction.\n *\n * ```markdown\n * > | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function instruction(code) {\n if (code === null) {\n return nok(code)\n }\n if (code === 63) {\n effects.consume(code)\n return instructionClose\n }\n if (markdownLineEnding(code)) {\n returnState = instruction\n return lineEndingBefore(code)\n }\n effects.consume(code)\n return instruction\n }\n\n /**\n * In instruction, after `?`, at `>`.\n *\n * ```markdown\n * > | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function instructionClose(code) {\n return code === 62 ? end(code) : instruction(code)\n }\n\n /**\n * After ` | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function tagCloseStart(code) {\n // ASCII alphabetical.\n if (asciiAlpha(code)) {\n effects.consume(code)\n return tagClose\n }\n return nok(code)\n }\n\n /**\n * After ` | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function tagClose(code) {\n // ASCII alphanumerical and `-`.\n if (code === 45 || asciiAlphanumeric(code)) {\n effects.consume(code)\n return tagClose\n }\n return tagCloseBetween(code)\n }\n\n /**\n * In closing tag, after tag name.\n *\n * ```markdown\n * > | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function tagCloseBetween(code) {\n if (markdownLineEnding(code)) {\n returnState = tagCloseBetween\n return lineEndingBefore(code)\n }\n if (markdownSpace(code)) {\n effects.consume(code)\n return tagCloseBetween\n }\n return end(code)\n }\n\n /**\n * After ` | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function tagOpen(code) {\n // ASCII alphanumerical and `-`.\n if (code === 45 || asciiAlphanumeric(code)) {\n effects.consume(code)\n return tagOpen\n }\n if (code === 47 || code === 62 || markdownLineEndingOrSpace(code)) {\n return tagOpenBetween(code)\n }\n return nok(code)\n }\n\n /**\n * In opening tag, after tag name.\n *\n * ```markdown\n * > | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function tagOpenBetween(code) {\n if (code === 47) {\n effects.consume(code)\n return end\n }\n\n // ASCII alphabetical and `:` and `_`.\n if (code === 58 || code === 95 || asciiAlpha(code)) {\n effects.consume(code)\n return tagOpenAttributeName\n }\n if (markdownLineEnding(code)) {\n returnState = tagOpenBetween\n return lineEndingBefore(code)\n }\n if (markdownSpace(code)) {\n effects.consume(code)\n return tagOpenBetween\n }\n return end(code)\n }\n\n /**\n * In attribute name.\n *\n * ```markdown\n * > | a d\n * ^\n * ```\n *\n * @type {State}\n */\n function tagOpenAttributeName(code) {\n // ASCII alphabetical and `-`, `.`, `:`, and `_`.\n if (\n code === 45 ||\n code === 46 ||\n code === 58 ||\n code === 95 ||\n asciiAlphanumeric(code)\n ) {\n effects.consume(code)\n return tagOpenAttributeName\n }\n return tagOpenAttributeNameAfter(code)\n }\n\n /**\n * After attribute name, before initializer, the end of the tag, or\n * whitespace.\n *\n * ```markdown\n * > | a d\n * ^\n * ```\n *\n * @type {State}\n */\n function tagOpenAttributeNameAfter(code) {\n if (code === 61) {\n effects.consume(code)\n return tagOpenAttributeValueBefore\n }\n if (markdownLineEnding(code)) {\n returnState = tagOpenAttributeNameAfter\n return lineEndingBefore(code)\n }\n if (markdownSpace(code)) {\n effects.consume(code)\n return tagOpenAttributeNameAfter\n }\n return tagOpenBetween(code)\n }\n\n /**\n * Before unquoted, double quoted, or single quoted attribute value, allowing\n * whitespace.\n *\n * ```markdown\n * > | a e\n * ^\n * ```\n *\n * @type {State}\n */\n function tagOpenAttributeValueBefore(code) {\n if (\n code === null ||\n code === 60 ||\n code === 61 ||\n code === 62 ||\n code === 96\n ) {\n return nok(code)\n }\n if (code === 34 || code === 39) {\n effects.consume(code)\n marker = code\n return tagOpenAttributeValueQuoted\n }\n if (markdownLineEnding(code)) {\n returnState = tagOpenAttributeValueBefore\n return lineEndingBefore(code)\n }\n if (markdownSpace(code)) {\n effects.consume(code)\n return tagOpenAttributeValueBefore\n }\n effects.consume(code)\n return tagOpenAttributeValueUnquoted\n }\n\n /**\n * In double or single quoted attribute value.\n *\n * ```markdown\n * > | a e\n * ^\n * ```\n *\n * @type {State}\n */\n function tagOpenAttributeValueQuoted(code) {\n if (code === marker) {\n effects.consume(code)\n marker = undefined\n return tagOpenAttributeValueQuotedAfter\n }\n if (code === null) {\n return nok(code)\n }\n if (markdownLineEnding(code)) {\n returnState = tagOpenAttributeValueQuoted\n return lineEndingBefore(code)\n }\n effects.consume(code)\n return tagOpenAttributeValueQuoted\n }\n\n /**\n * In unquoted attribute value.\n *\n * ```markdown\n * > | a e\n * ^\n * ```\n *\n * @type {State}\n */\n function tagOpenAttributeValueUnquoted(code) {\n if (\n code === null ||\n code === 34 ||\n code === 39 ||\n code === 60 ||\n code === 61 ||\n code === 96\n ) {\n return nok(code)\n }\n if (code === 47 || code === 62 || markdownLineEndingOrSpace(code)) {\n return tagOpenBetween(code)\n }\n effects.consume(code)\n return tagOpenAttributeValueUnquoted\n }\n\n /**\n * After double or single quoted attribute value, before whitespace or the end\n * of the tag.\n *\n * ```markdown\n * > | a e\n * ^\n * ```\n *\n * @type {State}\n */\n function tagOpenAttributeValueQuotedAfter(code) {\n if (code === 47 || code === 62 || markdownLineEndingOrSpace(code)) {\n return tagOpenBetween(code)\n }\n return nok(code)\n }\n\n /**\n * In certain circumstances of a tag where only an `>` is allowed.\n *\n * ```markdown\n * > | a e\n * ^\n * ```\n *\n * @type {State}\n */\n function end(code) {\n if (code === 62) {\n effects.consume(code)\n effects.exit('htmlTextData')\n effects.exit('htmlText')\n return ok\n }\n return nok(code)\n }\n\n /**\n * At eol.\n *\n * > 👉 **Note**: we can’t have blank lines in text, so no need to worry about\n * > empty tokens.\n *\n * ```markdown\n * > | a \n * ```\n *\n * @type {State}\n */\n function lineEndingBefore(code) {\n effects.exit('htmlTextData')\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return lineEndingAfter\n }\n\n /**\n * After eol, at optional whitespace.\n *\n * > 👉 **Note**: we can’t have blank lines in text, so no need to worry about\n * > empty tokens.\n *\n * ```markdown\n * | a \n * ^\n * ```\n *\n * @type {State}\n */\n function lineEndingAfter(code) {\n // Always populated by defaults.\n\n return markdownSpace(code)\n ? factorySpace(\n effects,\n lineEndingAfterPrefix,\n 'linePrefix',\n self.parser.constructs.disable.null.includes('codeIndented')\n ? undefined\n : 4\n )(code)\n : lineEndingAfterPrefix(code)\n }\n\n /**\n * After eol, after optional whitespace.\n *\n * > 👉 **Note**: we can’t have blank lines in text, so no need to worry about\n * > empty tokens.\n *\n * ```markdown\n * | a \n * ^\n * ```\n *\n * @type {State}\n */\n function lineEndingAfterPrefix(code) {\n effects.enter('htmlTextData')\n return returnState(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {labelEnd} from './label-end.js'\n\n/** @type {Construct} */\nexport const labelStartLink = {\n name: 'labelStartLink',\n tokenize: tokenizeLabelStartLink,\n resolveAll: labelEnd.resolveAll\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeLabelStartLink(effects, ok, nok) {\n const self = this\n return start\n\n /**\n * Start of label (link) start.\n *\n * ```markdown\n * > | a [b] c\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n effects.enter('labelLink')\n effects.enter('labelMarker')\n effects.consume(code)\n effects.exit('labelMarker')\n effects.exit('labelLink')\n return after\n }\n\n /** @type {State} */\n function after(code) {\n // To do: this isn’t needed in `micromark-extension-gfm-footnote`,\n // remove.\n // Hidden footnotes hook.\n /* c8 ignore next 3 */\n return code === 94 && '_hiddenFootnoteSupport' in self.parser.constructs\n ? nok(code)\n : ok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {markdownLineEnding} from 'micromark-util-character'\n/** @type {Construct} */\nexport const hardBreakEscape = {\n name: 'hardBreakEscape',\n tokenize: tokenizeHardBreakEscape\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeHardBreakEscape(effects, ok, nok) {\n return start\n\n /**\n * Start of a hard break (escape).\n *\n * ```markdown\n * > | a\\\n * ^\n * | b\n * ```\n *\n * @type {State}\n */\n function start(code) {\n effects.enter('hardBreakEscape')\n effects.consume(code)\n return after\n }\n\n /**\n * After `\\`, at eol.\n *\n * ```markdown\n * > | a\\\n * ^\n * | b\n * ```\n *\n * @type {State}\n */\n function after(code) {\n if (markdownLineEnding(code)) {\n effects.exit('hardBreakEscape')\n return ok(code)\n }\n return nok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Previous} Previous\n * @typedef {import('micromark-util-types').Resolver} Resolver\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').Token} Token\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {markdownLineEnding} from 'micromark-util-character'\n/** @type {Construct} */\nexport const codeText = {\n name: 'codeText',\n tokenize: tokenizeCodeText,\n resolve: resolveCodeText,\n previous\n}\n\n// To do: next major: don’t resolve, like `markdown-rs`.\n/** @type {Resolver} */\nfunction resolveCodeText(events) {\n let tailExitIndex = events.length - 4\n let headEnterIndex = 3\n /** @type {number} */\n let index\n /** @type {number | undefined} */\n let enter\n\n // If we start and end with an EOL or a space.\n if (\n (events[headEnterIndex][1].type === 'lineEnding' ||\n events[headEnterIndex][1].type === 'space') &&\n (events[tailExitIndex][1].type === 'lineEnding' ||\n events[tailExitIndex][1].type === 'space')\n ) {\n index = headEnterIndex\n\n // And we have data.\n while (++index < tailExitIndex) {\n if (events[index][1].type === 'codeTextData') {\n // Then we have padding.\n events[headEnterIndex][1].type = 'codeTextPadding'\n events[tailExitIndex][1].type = 'codeTextPadding'\n headEnterIndex += 2\n tailExitIndex -= 2\n break\n }\n }\n }\n\n // Merge adjacent spaces and data.\n index = headEnterIndex - 1\n tailExitIndex++\n while (++index <= tailExitIndex) {\n if (enter === undefined) {\n if (index !== tailExitIndex && events[index][1].type !== 'lineEnding') {\n enter = index\n }\n } else if (\n index === tailExitIndex ||\n events[index][1].type === 'lineEnding'\n ) {\n events[enter][1].type = 'codeTextData'\n if (index !== enter + 2) {\n events[enter][1].end = events[index - 1][1].end\n events.splice(enter + 2, index - enter - 2)\n tailExitIndex -= index - enter - 2\n index = enter + 2\n }\n enter = undefined\n }\n }\n return events\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Previous}\n */\nfunction previous(code) {\n // If there is a previous code, there will always be a tail.\n return (\n code !== 96 ||\n this.events[this.events.length - 1][1].type === 'characterEscape'\n )\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeCodeText(effects, ok, nok) {\n const self = this\n let sizeOpen = 0\n /** @type {number} */\n let size\n /** @type {Token} */\n let token\n return start\n\n /**\n * Start of code (text).\n *\n * ```markdown\n * > | `a`\n * ^\n * > | \\`a`\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n effects.enter('codeText')\n effects.enter('codeTextSequence')\n return sequenceOpen(code)\n }\n\n /**\n * In opening sequence.\n *\n * ```markdown\n * > | `a`\n * ^\n * ```\n *\n * @type {State}\n */\n function sequenceOpen(code) {\n if (code === 96) {\n effects.consume(code)\n sizeOpen++\n return sequenceOpen\n }\n effects.exit('codeTextSequence')\n return between(code)\n }\n\n /**\n * Between something and something else.\n *\n * ```markdown\n * > | `a`\n * ^^\n * ```\n *\n * @type {State}\n */\n function between(code) {\n // EOF.\n if (code === null) {\n return nok(code)\n }\n\n // To do: next major: don’t do spaces in resolve, but when compiling,\n // like `markdown-rs`.\n // Tabs don’t work, and virtual spaces don’t make sense.\n if (code === 32) {\n effects.enter('space')\n effects.consume(code)\n effects.exit('space')\n return between\n }\n\n // Closing fence? Could also be data.\n if (code === 96) {\n token = effects.enter('codeTextSequence')\n size = 0\n return sequenceClose(code)\n }\n if (markdownLineEnding(code)) {\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return between\n }\n\n // Data.\n effects.enter('codeTextData')\n return data(code)\n }\n\n /**\n * In data.\n *\n * ```markdown\n * > | `a`\n * ^\n * ```\n *\n * @type {State}\n */\n function data(code) {\n if (\n code === null ||\n code === 32 ||\n code === 96 ||\n markdownLineEnding(code)\n ) {\n effects.exit('codeTextData')\n return between(code)\n }\n effects.consume(code)\n return data\n }\n\n /**\n * In closing sequence.\n *\n * ```markdown\n * > | `a`\n * ^\n * ```\n *\n * @type {State}\n */\n function sequenceClose(code) {\n // More.\n if (code === 96) {\n effects.consume(code)\n size++\n return sequenceClose\n }\n\n // Done!\n if (size === sizeOpen) {\n effects.exit('codeTextSequence')\n effects.exit('codeText')\n return ok(code)\n }\n\n // More or less accents: mark as data.\n token.type = 'codeTextData'\n return data(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Extension} Extension\n */\n\nimport {\n attention,\n autolink,\n blockQuote,\n characterEscape,\n characterReference,\n codeFenced,\n codeIndented,\n codeText,\n definition,\n hardBreakEscape,\n headingAtx,\n htmlFlow,\n htmlText,\n labelEnd,\n labelStartImage,\n labelStartLink,\n lineEnding,\n list,\n setextUnderline,\n thematicBreak\n} from 'micromark-core-commonmark'\nimport {resolver as resolveText} from './initialize/text.js'\n\n/** @satisfies {Extension['document']} */\nexport const document = {\n [42]: list,\n [43]: list,\n [45]: list,\n [48]: list,\n [49]: list,\n [50]: list,\n [51]: list,\n [52]: list,\n [53]: list,\n [54]: list,\n [55]: list,\n [56]: list,\n [57]: list,\n [62]: blockQuote\n}\n\n/** @satisfies {Extension['contentInitial']} */\nexport const contentInitial = {\n [91]: definition\n}\n\n/** @satisfies {Extension['flowInitial']} */\nexport const flowInitial = {\n [-2]: codeIndented,\n [-1]: codeIndented,\n [32]: codeIndented\n}\n\n/** @satisfies {Extension['flow']} */\nexport const flow = {\n [35]: headingAtx,\n [42]: thematicBreak,\n [45]: [setextUnderline, thematicBreak],\n [60]: htmlFlow,\n [61]: setextUnderline,\n [95]: thematicBreak,\n [96]: codeFenced,\n [126]: codeFenced\n}\n\n/** @satisfies {Extension['string']} */\nexport const string = {\n [38]: characterReference,\n [92]: characterEscape\n}\n\n/** @satisfies {Extension['text']} */\nexport const text = {\n [-5]: lineEnding,\n [-4]: lineEnding,\n [-3]: lineEnding,\n [33]: labelStartImage,\n [38]: characterReference,\n [42]: attention,\n [60]: [autolink, htmlText],\n [91]: labelStartLink,\n [92]: [hardBreakEscape, characterEscape],\n [93]: labelEnd,\n [95]: attention,\n [96]: codeText\n}\n\n/** @satisfies {Extension['insideSpan']} */\nexport const insideSpan = {\n null: [attention, resolveText]\n}\n\n/** @satisfies {Extension['attentionMarkers']} */\nexport const attentionMarkers = {\n null: [42, 95]\n}\n\n/** @satisfies {Extension['disable']} */\nexport const disable = {\n null: []\n}\n","/**\n * @typedef {import('micromark-util-types').Create} Create\n * @typedef {import('micromark-util-types').FullNormalizedExtension} FullNormalizedExtension\n * @typedef {import('micromark-util-types').InitialConstruct} InitialConstruct\n * @typedef {import('micromark-util-types').ParseContext} ParseContext\n * @typedef {import('micromark-util-types').ParseOptions} ParseOptions\n */\n\nimport {combineExtensions} from 'micromark-util-combine-extensions'\nimport {content} from './initialize/content.js'\nimport {document} from './initialize/document.js'\nimport {flow} from './initialize/flow.js'\nimport {text, string} from './initialize/text.js'\nimport {createTokenizer} from './create-tokenizer.js'\nimport * as defaultConstructs from './constructs.js'\n\n/**\n * @param {ParseOptions | null | undefined} [options]\n * @returns {ParseContext}\n */\nexport function parse(options) {\n const settings = options || {}\n const constructs =\n /** @type {FullNormalizedExtension} */\n combineExtensions([defaultConstructs, ...(settings.extensions || [])])\n\n /** @type {ParseContext} */\n const parser = {\n defined: [],\n lazy: {},\n constructs,\n content: create(content),\n document: create(document),\n flow: create(flow),\n string: create(string),\n text: create(text)\n }\n return parser\n\n /**\n * @param {InitialConstruct} initial\n */\n function create(initial) {\n return creator\n /** @type {Create} */\n function creator(from) {\n return createTokenizer(parser, initial, from)\n }\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Chunk} Chunk\n * @typedef {import('micromark-util-types').Code} Code\n * @typedef {import('micromark-util-types').Encoding} Encoding\n * @typedef {import('micromark-util-types').Value} Value\n */\n\n/**\n * @callback Preprocessor\n * @param {Value} value\n * @param {Encoding | null | undefined} [encoding]\n * @param {boolean | null | undefined} [end=false]\n * @returns {Array}\n */\n\nconst search = /[\\0\\t\\n\\r]/g\n\n/**\n * @returns {Preprocessor}\n */\nexport function preprocess() {\n let column = 1\n let buffer = ''\n /** @type {boolean | undefined} */\n let start = true\n /** @type {boolean | undefined} */\n let atCarriageReturn\n return preprocessor\n\n /** @type {Preprocessor} */\n function preprocessor(value, encoding, end) {\n /** @type {Array} */\n const chunks = []\n /** @type {RegExpMatchArray | null} */\n let match\n /** @type {number} */\n let next\n /** @type {number} */\n let startPosition\n /** @type {number} */\n let endPosition\n /** @type {Code} */\n let code\n\n // @ts-expect-error `Buffer` does allow an encoding.\n value = buffer + value.toString(encoding)\n startPosition = 0\n buffer = ''\n if (start) {\n // To do: `markdown-rs` actually parses BOMs (byte order mark).\n if (value.charCodeAt(0) === 65279) {\n startPosition++\n }\n start = undefined\n }\n while (startPosition < value.length) {\n search.lastIndex = startPosition\n match = search.exec(value)\n endPosition =\n match && match.index !== undefined ? match.index : value.length\n code = value.charCodeAt(endPosition)\n if (!match) {\n buffer = value.slice(startPosition)\n break\n }\n if (code === 10 && startPosition === endPosition && atCarriageReturn) {\n chunks.push(-3)\n atCarriageReturn = undefined\n } else {\n if (atCarriageReturn) {\n chunks.push(-5)\n atCarriageReturn = undefined\n }\n if (startPosition < endPosition) {\n chunks.push(value.slice(startPosition, endPosition))\n column += endPosition - startPosition\n }\n switch (code) {\n case 0: {\n chunks.push(65533)\n column++\n break\n }\n case 9: {\n next = Math.ceil(column / 4) * 4\n chunks.push(-2)\n while (column++ < next) chunks.push(-1)\n break\n }\n case 10: {\n chunks.push(-4)\n column = 1\n break\n }\n default: {\n atCarriageReturn = true\n column = 1\n }\n }\n }\n startPosition = endPosition + 1\n }\n if (end) {\n if (atCarriageReturn) chunks.push(-5)\n if (buffer) chunks.push(buffer)\n chunks.push(null)\n }\n return chunks\n }\n}\n","/**\n * Turn the number (in string form as either hexa- or plain decimal) coming from\n * a numeric character reference into a character.\n *\n * Sort of like `String.fromCharCode(Number.parseInt(value, base))`, but makes\n * non-characters and control characters safe.\n *\n * @param {string} value\n * Value to decode.\n * @param {number} base\n * Numeric base.\n * @returns {string}\n * Character.\n */\nexport function decodeNumericCharacterReference(value, base) {\n const code = Number.parseInt(value, base)\n if (\n // C0 except for HT, LF, FF, CR, space.\n code < 9 ||\n code === 11 ||\n (code > 13 && code < 32) ||\n // Control character (DEL) of C0, and C1 controls.\n (code > 126 && code < 160) ||\n // Lone high surrogates and low surrogates.\n (code > 55295 && code < 57344) ||\n // Noncharacters.\n (code > 64975 && code < 65008) /* eslint-disable no-bitwise */ ||\n (code & 65535) === 65535 ||\n (code & 65535) === 65534 /* eslint-enable no-bitwise */ ||\n // Out of range\n code > 1114111\n ) {\n return '\\uFFFD'\n }\n return String.fromCharCode(code)\n}\n","import {decodeNamedCharacterReference} from 'decode-named-character-reference'\nimport {decodeNumericCharacterReference} from 'micromark-util-decode-numeric-character-reference'\nconst characterEscapeOrReference =\n /\\\\([!-/:-@[-`{-~])|&(#(?:\\d{1,7}|x[\\da-f]{1,6})|[\\da-z]{1,31});/gi\n\n/**\n * Decode markdown strings (which occur in places such as fenced code info\n * strings, destinations, labels, and titles).\n *\n * The “string” content type allows character escapes and -references.\n * This decodes those.\n *\n * @param {string} value\n * Value to decode.\n * @returns {string}\n * Decoded value.\n */\nexport function decodeString(value) {\n return value.replace(characterEscapeOrReference, decode)\n}\n\n/**\n * @param {string} $0\n * @param {string} $1\n * @param {string} $2\n * @returns {string}\n */\nfunction decode($0, $1, $2) {\n if ($1) {\n // Escape.\n return $1\n }\n\n // Reference.\n const head = $2.charCodeAt(0)\n if (head === 35) {\n const head = $2.charCodeAt(1)\n const hex = head === 120 || head === 88\n return decodeNumericCharacterReference($2.slice(hex ? 2 : 1), hex ? 16 : 10)\n }\n return decodeNamedCharacterReference($2) || $0\n}\n","/**\n * @typedef {import('micromark-util-types').Encoding} Encoding\n * @typedef {import('micromark-util-types').Event} Event\n * @typedef {import('micromark-util-types').ParseOptions} ParseOptions\n * @typedef {import('micromark-util-types').Token} Token\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Value} Value\n *\n * @typedef {import('unist').Parent} UnistParent\n * @typedef {import('unist').Point} Point\n *\n * @typedef {import('mdast').PhrasingContent} PhrasingContent\n * @typedef {import('mdast').StaticPhrasingContent} StaticPhrasingContent\n * @typedef {import('mdast').Content} Content\n * @typedef {import('mdast').Break} Break\n * @typedef {import('mdast').Blockquote} Blockquote\n * @typedef {import('mdast').Code} Code\n * @typedef {import('mdast').Definition} Definition\n * @typedef {import('mdast').Emphasis} Emphasis\n * @typedef {import('mdast').Heading} Heading\n * @typedef {import('mdast').HTML} HTML\n * @typedef {import('mdast').Image} Image\n * @typedef {import('mdast').ImageReference} ImageReference\n * @typedef {import('mdast').InlineCode} InlineCode\n * @typedef {import('mdast').Link} Link\n * @typedef {import('mdast').LinkReference} LinkReference\n * @typedef {import('mdast').List} List\n * @typedef {import('mdast').ListItem} ListItem\n * @typedef {import('mdast').Paragraph} Paragraph\n * @typedef {import('mdast').Root} Root\n * @typedef {import('mdast').Strong} Strong\n * @typedef {import('mdast').Text} Text\n * @typedef {import('mdast').ThematicBreak} ThematicBreak\n * @typedef {import('mdast').ReferenceType} ReferenceType\n * @typedef {import('../index.js').CompileData} CompileData\n */\n\n/**\n * @typedef {Root | Content} Node\n * @typedef {Extract} Parent\n *\n * @typedef {Omit & {type: 'fragment', children: Array}} Fragment\n */\n\n/**\n * @callback Transform\n * Extra transform, to change the AST afterwards.\n * @param {Root} tree\n * Tree to transform.\n * @returns {Root | undefined | null | void}\n * New tree or nothing (in which case the current tree is used).\n *\n * @callback Handle\n * Handle a token.\n * @param {CompileContext} this\n * Context.\n * @param {Token} token\n * Current token.\n * @returns {void}\n * Nothing.\n *\n * @typedef {Record} Handles\n * Token types mapping to handles\n *\n * @callback OnEnterError\n * Handle the case where the `right` token is open, but it is closed (by the\n * `left` token) or because we reached the end of the document.\n * @param {Omit} this\n * Context.\n * @param {Token | undefined} left\n * Left token.\n * @param {Token} right\n * Right token.\n * @returns {void}\n * Nothing.\n *\n * @callback OnExitError\n * Handle the case where the `right` token is open but it is closed by\n * exiting the `left` token.\n * @param {Omit} this\n * Context.\n * @param {Token} left\n * Left token.\n * @param {Token} right\n * Right token.\n * @returns {void}\n * Nothing.\n *\n * @typedef {[Token, OnEnterError | undefined]} TokenTuple\n * Open token on the stack, with an optional error handler for when\n * that token isn’t closed properly.\n */\n\n/**\n * @typedef Config\n * Configuration.\n *\n * We have our defaults, but extensions will add more.\n * @property {Array} canContainEols\n * Token types where line endings are used.\n * @property {Handles} enter\n * Opening handles.\n * @property {Handles} exit\n * Closing handles.\n * @property {Array} transforms\n * Tree transforms.\n *\n * @typedef {Partial} Extension\n * Change how markdown tokens from micromark are turned into mdast.\n *\n * @typedef CompileContext\n * mdast compiler context.\n * @property {Array} stack\n * Stack of nodes.\n * @property {Array} tokenStack\n * Stack of tokens.\n * @property {(key: Key) => CompileData[Key]} getData\n * Get data from the key/value store.\n * @property {(key: Key, value?: CompileData[Key]) => void} setData\n * Set data into the key/value store.\n * @property {(this: CompileContext) => void} buffer\n * Capture some of the output data.\n * @property {(this: CompileContext) => string} resume\n * Stop capturing and access the output data.\n * @property {(this: CompileContext, node: Kind, token: Token, onError?: OnEnterError) => Kind} enter\n * Enter a token.\n * @property {(this: CompileContext, token: Token, onError?: OnExitError) => Node} exit\n * Exit a token.\n * @property {TokenizeContext['sliceSerialize']} sliceSerialize\n * Get the string value of a token.\n * @property {Config} config\n * Configuration.\n *\n * @typedef FromMarkdownOptions\n * Configuration for how to build mdast.\n * @property {Array> | null | undefined} [mdastExtensions]\n * Extensions for this utility to change how tokens are turned into a tree.\n *\n * @typedef {ParseOptions & FromMarkdownOptions} Options\n * Configuration.\n */\n\n// To do: micromark: create a registry of tokens?\n// To do: next major: don’t return given `Node` from `enter`.\n// To do: next major: remove setter/getter.\n\nimport {toString} from 'mdast-util-to-string'\nimport {parse} from 'micromark/lib/parse.js'\nimport {preprocess} from 'micromark/lib/preprocess.js'\nimport {postprocess} from 'micromark/lib/postprocess.js'\nimport {decodeNumericCharacterReference} from 'micromark-util-decode-numeric-character-reference'\nimport {decodeString} from 'micromark-util-decode-string'\nimport {normalizeIdentifier} from 'micromark-util-normalize-identifier'\nimport {decodeNamedCharacterReference} from 'decode-named-character-reference'\nimport {stringifyPosition} from 'unist-util-stringify-position'\nconst own = {}.hasOwnProperty\n\n/**\n * @param value\n * Markdown to parse.\n * @param encoding\n * Character encoding for when `value` is `Buffer`.\n * @param options\n * Configuration.\n * @returns\n * mdast tree.\n */\nexport const fromMarkdown =\n /**\n * @type {(\n * ((value: Value, encoding: Encoding, options?: Options | null | undefined) => Root) &\n * ((value: Value, options?: Options | null | undefined) => Root)\n * )}\n */\n\n /**\n * @param {Value} value\n * @param {Encoding | Options | null | undefined} [encoding]\n * @param {Options | null | undefined} [options]\n * @returns {Root}\n */\n function (value, encoding, options) {\n if (typeof encoding !== 'string') {\n options = encoding\n encoding = undefined\n }\n return compiler(options)(\n postprocess(\n parse(options).document().write(preprocess()(value, encoding, true))\n )\n )\n }\n\n/**\n * Note this compiler only understand complete buffering, not streaming.\n *\n * @param {Options | null | undefined} [options]\n */\nfunction compiler(options) {\n /** @type {Config} */\n const config = {\n transforms: [],\n canContainEols: ['emphasis', 'fragment', 'heading', 'paragraph', 'strong'],\n enter: {\n autolink: opener(link),\n autolinkProtocol: onenterdata,\n autolinkEmail: onenterdata,\n atxHeading: opener(heading),\n blockQuote: opener(blockQuote),\n characterEscape: onenterdata,\n characterReference: onenterdata,\n codeFenced: opener(codeFlow),\n codeFencedFenceInfo: buffer,\n codeFencedFenceMeta: buffer,\n codeIndented: opener(codeFlow, buffer),\n codeText: opener(codeText, buffer),\n codeTextData: onenterdata,\n data: onenterdata,\n codeFlowValue: onenterdata,\n definition: opener(definition),\n definitionDestinationString: buffer,\n definitionLabelString: buffer,\n definitionTitleString: buffer,\n emphasis: opener(emphasis),\n hardBreakEscape: opener(hardBreak),\n hardBreakTrailing: opener(hardBreak),\n htmlFlow: opener(html, buffer),\n htmlFlowData: onenterdata,\n htmlText: opener(html, buffer),\n htmlTextData: onenterdata,\n image: opener(image),\n label: buffer,\n link: opener(link),\n listItem: opener(listItem),\n listItemValue: onenterlistitemvalue,\n listOrdered: opener(list, onenterlistordered),\n listUnordered: opener(list),\n paragraph: opener(paragraph),\n reference: onenterreference,\n referenceString: buffer,\n resourceDestinationString: buffer,\n resourceTitleString: buffer,\n setextHeading: opener(heading),\n strong: opener(strong),\n thematicBreak: opener(thematicBreak)\n },\n exit: {\n atxHeading: closer(),\n atxHeadingSequence: onexitatxheadingsequence,\n autolink: closer(),\n autolinkEmail: onexitautolinkemail,\n autolinkProtocol: onexitautolinkprotocol,\n blockQuote: closer(),\n characterEscapeValue: onexitdata,\n characterReferenceMarkerHexadecimal: onexitcharacterreferencemarker,\n characterReferenceMarkerNumeric: onexitcharacterreferencemarker,\n characterReferenceValue: onexitcharacterreferencevalue,\n codeFenced: closer(onexitcodefenced),\n codeFencedFence: onexitcodefencedfence,\n codeFencedFenceInfo: onexitcodefencedfenceinfo,\n codeFencedFenceMeta: onexitcodefencedfencemeta,\n codeFlowValue: onexitdata,\n codeIndented: closer(onexitcodeindented),\n codeText: closer(onexitcodetext),\n codeTextData: onexitdata,\n data: onexitdata,\n definition: closer(),\n definitionDestinationString: onexitdefinitiondestinationstring,\n definitionLabelString: onexitdefinitionlabelstring,\n definitionTitleString: onexitdefinitiontitlestring,\n emphasis: closer(),\n hardBreakEscape: closer(onexithardbreak),\n hardBreakTrailing: closer(onexithardbreak),\n htmlFlow: closer(onexithtmlflow),\n htmlFlowData: onexitdata,\n htmlText: closer(onexithtmltext),\n htmlTextData: onexitdata,\n image: closer(onexitimage),\n label: onexitlabel,\n labelText: onexitlabeltext,\n lineEnding: onexitlineending,\n link: closer(onexitlink),\n listItem: closer(),\n listOrdered: closer(),\n listUnordered: closer(),\n paragraph: closer(),\n referenceString: onexitreferencestring,\n resourceDestinationString: onexitresourcedestinationstring,\n resourceTitleString: onexitresourcetitlestring,\n resource: onexitresource,\n setextHeading: closer(onexitsetextheading),\n setextHeadingLineSequence: onexitsetextheadinglinesequence,\n setextHeadingText: onexitsetextheadingtext,\n strong: closer(),\n thematicBreak: closer()\n }\n }\n configure(config, (options || {}).mdastExtensions || [])\n\n /** @type {CompileData} */\n const data = {}\n return compile\n\n /**\n * Turn micromark events into an mdast tree.\n *\n * @param {Array} events\n * Events.\n * @returns {Root}\n * mdast tree.\n */\n function compile(events) {\n /** @type {Root} */\n let tree = {\n type: 'root',\n children: []\n }\n /** @type {Omit} */\n const context = {\n stack: [tree],\n tokenStack: [],\n config,\n enter,\n exit,\n buffer,\n resume,\n setData,\n getData\n }\n /** @type {Array} */\n const listStack = []\n let index = -1\n while (++index < events.length) {\n // We preprocess lists to add `listItem` tokens, and to infer whether\n // items the list itself are spread out.\n if (\n events[index][1].type === 'listOrdered' ||\n events[index][1].type === 'listUnordered'\n ) {\n if (events[index][0] === 'enter') {\n listStack.push(index)\n } else {\n const tail = listStack.pop()\n index = prepareList(events, tail, index)\n }\n }\n }\n index = -1\n while (++index < events.length) {\n const handler = config[events[index][0]]\n if (own.call(handler, events[index][1].type)) {\n handler[events[index][1].type].call(\n Object.assign(\n {\n sliceSerialize: events[index][2].sliceSerialize\n },\n context\n ),\n events[index][1]\n )\n }\n }\n\n // Handle tokens still being open.\n if (context.tokenStack.length > 0) {\n const tail = context.tokenStack[context.tokenStack.length - 1]\n const handler = tail[1] || defaultOnError\n handler.call(context, undefined, tail[0])\n }\n\n // Figure out `root` position.\n tree.position = {\n start: point(\n events.length > 0\n ? events[0][1].start\n : {\n line: 1,\n column: 1,\n offset: 0\n }\n ),\n end: point(\n events.length > 0\n ? events[events.length - 2][1].end\n : {\n line: 1,\n column: 1,\n offset: 0\n }\n )\n }\n\n // Call transforms.\n index = -1\n while (++index < config.transforms.length) {\n tree = config.transforms[index](tree) || tree\n }\n return tree\n }\n\n /**\n * @param {Array} events\n * @param {number} start\n * @param {number} length\n * @returns {number}\n */\n function prepareList(events, start, length) {\n let index = start - 1\n let containerBalance = -1\n let listSpread = false\n /** @type {Token | undefined} */\n let listItem\n /** @type {number | undefined} */\n let lineIndex\n /** @type {number | undefined} */\n let firstBlankLineIndex\n /** @type {boolean | undefined} */\n let atMarker\n while (++index <= length) {\n const event = events[index]\n if (\n event[1].type === 'listUnordered' ||\n event[1].type === 'listOrdered' ||\n event[1].type === 'blockQuote'\n ) {\n if (event[0] === 'enter') {\n containerBalance++\n } else {\n containerBalance--\n }\n atMarker = undefined\n } else if (event[1].type === 'lineEndingBlank') {\n if (event[0] === 'enter') {\n if (\n listItem &&\n !atMarker &&\n !containerBalance &&\n !firstBlankLineIndex\n ) {\n firstBlankLineIndex = index\n }\n atMarker = undefined\n }\n } else if (\n event[1].type === 'linePrefix' ||\n event[1].type === 'listItemValue' ||\n event[1].type === 'listItemMarker' ||\n event[1].type === 'listItemPrefix' ||\n event[1].type === 'listItemPrefixWhitespace'\n ) {\n // Empty.\n } else {\n atMarker = undefined\n }\n if (\n (!containerBalance &&\n event[0] === 'enter' &&\n event[1].type === 'listItemPrefix') ||\n (containerBalance === -1 &&\n event[0] === 'exit' &&\n (event[1].type === 'listUnordered' ||\n event[1].type === 'listOrdered'))\n ) {\n if (listItem) {\n let tailIndex = index\n lineIndex = undefined\n while (tailIndex--) {\n const tailEvent = events[tailIndex]\n if (\n tailEvent[1].type === 'lineEnding' ||\n tailEvent[1].type === 'lineEndingBlank'\n ) {\n if (tailEvent[0] === 'exit') continue\n if (lineIndex) {\n events[lineIndex][1].type = 'lineEndingBlank'\n listSpread = true\n }\n tailEvent[1].type = 'lineEnding'\n lineIndex = tailIndex\n } else if (\n tailEvent[1].type === 'linePrefix' ||\n tailEvent[1].type === 'blockQuotePrefix' ||\n tailEvent[1].type === 'blockQuotePrefixWhitespace' ||\n tailEvent[1].type === 'blockQuoteMarker' ||\n tailEvent[1].type === 'listItemIndent'\n ) {\n // Empty\n } else {\n break\n }\n }\n if (\n firstBlankLineIndex &&\n (!lineIndex || firstBlankLineIndex < lineIndex)\n ) {\n listItem._spread = true\n }\n\n // Fix position.\n listItem.end = Object.assign(\n {},\n lineIndex ? events[lineIndex][1].start : event[1].end\n )\n events.splice(lineIndex || index, 0, ['exit', listItem, event[2]])\n index++\n length++\n }\n\n // Create a new list item.\n if (event[1].type === 'listItemPrefix') {\n listItem = {\n type: 'listItem',\n _spread: false,\n start: Object.assign({}, event[1].start),\n // @ts-expect-error: we’ll add `end` in a second.\n end: undefined\n }\n // @ts-expect-error: `listItem` is most definitely defined, TS...\n events.splice(index, 0, ['enter', listItem, event[2]])\n index++\n length++\n firstBlankLineIndex = undefined\n atMarker = true\n }\n }\n }\n events[start][1]._spread = listSpread\n return length\n }\n\n /**\n * Set data.\n *\n * @template {keyof CompileData} Key\n * Field type.\n * @param {Key} key\n * Key of field.\n * @param {CompileData[Key]} [value]\n * New value.\n * @returns {void}\n * Nothing.\n */\n function setData(key, value) {\n data[key] = value\n }\n\n /**\n * Get data.\n *\n * @template {keyof CompileData} Key\n * Field type.\n * @param {Key} key\n * Key of field.\n * @returns {CompileData[Key]}\n * Value.\n */\n function getData(key) {\n return data[key]\n }\n\n /**\n * Create an opener handle.\n *\n * @param {(token: Token) => Node} create\n * Create a node.\n * @param {Handle} [and]\n * Optional function to also run.\n * @returns {Handle}\n * Handle.\n */\n function opener(create, and) {\n return open\n\n /**\n * @this {CompileContext}\n * @param {Token} token\n * @returns {void}\n */\n function open(token) {\n enter.call(this, create(token), token)\n if (and) and.call(this, token)\n }\n }\n\n /**\n * @this {CompileContext}\n * @returns {void}\n */\n function buffer() {\n this.stack.push({\n type: 'fragment',\n children: []\n })\n }\n\n /**\n * @template {Node} Kind\n * Node type.\n * @this {CompileContext}\n * Context.\n * @param {Kind} node\n * Node to enter.\n * @param {Token} token\n * Corresponding token.\n * @param {OnEnterError | undefined} [errorHandler]\n * Handle the case where this token is open, but it is closed by something else.\n * @returns {Kind}\n * The given node.\n */\n function enter(node, token, errorHandler) {\n const parent = this.stack[this.stack.length - 1]\n // @ts-expect-error: Assume `Node` can exist as a child of `parent`.\n parent.children.push(node)\n this.stack.push(node)\n this.tokenStack.push([token, errorHandler])\n // @ts-expect-error: `end` will be patched later.\n node.position = {\n start: point(token.start)\n }\n return node\n }\n\n /**\n * Create a closer handle.\n *\n * @param {Handle} [and]\n * Optional function to also run.\n * @returns {Handle}\n * Handle.\n */\n function closer(and) {\n return close\n\n /**\n * @this {CompileContext}\n * @param {Token} token\n * @returns {void}\n */\n function close(token) {\n if (and) and.call(this, token)\n exit.call(this, token)\n }\n }\n\n /**\n * @this {CompileContext}\n * Context.\n * @param {Token} token\n * Corresponding token.\n * @param {OnExitError | undefined} [onExitError]\n * Handle the case where another token is open.\n * @returns {Node}\n * The closed node.\n */\n function exit(token, onExitError) {\n const node = this.stack.pop()\n const open = this.tokenStack.pop()\n if (!open) {\n throw new Error(\n 'Cannot close `' +\n token.type +\n '` (' +\n stringifyPosition({\n start: token.start,\n end: token.end\n }) +\n '): it’s not open'\n )\n } else if (open[0].type !== token.type) {\n if (onExitError) {\n onExitError.call(this, token, open[0])\n } else {\n const handler = open[1] || defaultOnError\n handler.call(this, token, open[0])\n }\n }\n node.position.end = point(token.end)\n return node\n }\n\n /**\n * @this {CompileContext}\n * @returns {string}\n */\n function resume() {\n return toString(this.stack.pop())\n }\n\n //\n // Handlers.\n //\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onenterlistordered() {\n setData('expectingFirstListItemValue', true)\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onenterlistitemvalue(token) {\n if (getData('expectingFirstListItemValue')) {\n const ancestor = this.stack[this.stack.length - 2]\n ancestor.start = Number.parseInt(this.sliceSerialize(token), 10)\n setData('expectingFirstListItemValue')\n }\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitcodefencedfenceinfo() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.lang = data\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitcodefencedfencemeta() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.meta = data\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitcodefencedfence() {\n // Exit if this is the closing fence.\n if (getData('flowCodeInside')) return\n this.buffer()\n setData('flowCodeInside', true)\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitcodefenced() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.value = data.replace(/^(\\r?\\n|\\r)|(\\r?\\n|\\r)$/g, '')\n setData('flowCodeInside')\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitcodeindented() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.value = data.replace(/(\\r?\\n|\\r)$/g, '')\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitdefinitionlabelstring(token) {\n const label = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.label = label\n node.identifier = normalizeIdentifier(\n this.sliceSerialize(token)\n ).toLowerCase()\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitdefinitiontitlestring() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.title = data\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitdefinitiondestinationstring() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.url = data\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitatxheadingsequence(token) {\n const node = this.stack[this.stack.length - 1]\n if (!node.depth) {\n const depth = this.sliceSerialize(token).length\n node.depth = depth\n }\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitsetextheadingtext() {\n setData('setextHeadingSlurpLineEnding', true)\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitsetextheadinglinesequence(token) {\n const node = this.stack[this.stack.length - 1]\n node.depth = this.sliceSerialize(token).charCodeAt(0) === 61 ? 1 : 2\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitsetextheading() {\n setData('setextHeadingSlurpLineEnding')\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onenterdata(token) {\n const node = this.stack[this.stack.length - 1]\n let tail = node.children[node.children.length - 1]\n if (!tail || tail.type !== 'text') {\n // Add a new text node.\n tail = text()\n // @ts-expect-error: we’ll add `end` later.\n tail.position = {\n start: point(token.start)\n }\n // @ts-expect-error: Assume `parent` accepts `text`.\n node.children.push(tail)\n }\n this.stack.push(tail)\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitdata(token) {\n const tail = this.stack.pop()\n tail.value += this.sliceSerialize(token)\n tail.position.end = point(token.end)\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitlineending(token) {\n const context = this.stack[this.stack.length - 1]\n // If we’re at a hard break, include the line ending in there.\n if (getData('atHardBreak')) {\n const tail = context.children[context.children.length - 1]\n tail.position.end = point(token.end)\n setData('atHardBreak')\n return\n }\n if (\n !getData('setextHeadingSlurpLineEnding') &&\n config.canContainEols.includes(context.type)\n ) {\n onenterdata.call(this, token)\n onexitdata.call(this, token)\n }\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexithardbreak() {\n setData('atHardBreak', true)\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexithtmlflow() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.value = data\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexithtmltext() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.value = data\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitcodetext() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.value = data\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitlink() {\n const node = this.stack[this.stack.length - 1]\n // Note: there are also `identifier` and `label` fields on this link node!\n // These are used / cleaned here.\n // To do: clean.\n if (getData('inReference')) {\n /** @type {ReferenceType} */\n const referenceType = getData('referenceType') || 'shortcut'\n node.type += 'Reference'\n // @ts-expect-error: mutate.\n node.referenceType = referenceType\n // @ts-expect-error: mutate.\n delete node.url\n delete node.title\n } else {\n // @ts-expect-error: mutate.\n delete node.identifier\n // @ts-expect-error: mutate.\n delete node.label\n }\n setData('referenceType')\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitimage() {\n const node = this.stack[this.stack.length - 1]\n // Note: there are also `identifier` and `label` fields on this link node!\n // These are used / cleaned here.\n // To do: clean.\n if (getData('inReference')) {\n /** @type {ReferenceType} */\n const referenceType = getData('referenceType') || 'shortcut'\n node.type += 'Reference'\n // @ts-expect-error: mutate.\n node.referenceType = referenceType\n // @ts-expect-error: mutate.\n delete node.url\n delete node.title\n } else {\n // @ts-expect-error: mutate.\n delete node.identifier\n // @ts-expect-error: mutate.\n delete node.label\n }\n setData('referenceType')\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitlabeltext(token) {\n const string = this.sliceSerialize(token)\n const ancestor = this.stack[this.stack.length - 2]\n // @ts-expect-error: stash this on the node, as it might become a reference\n // later.\n ancestor.label = decodeString(string)\n // @ts-expect-error: same as above.\n ancestor.identifier = normalizeIdentifier(string).toLowerCase()\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitlabel() {\n const fragment = this.stack[this.stack.length - 1]\n const value = this.resume()\n const node = this.stack[this.stack.length - 1]\n // Assume a reference.\n setData('inReference', true)\n if (node.type === 'link') {\n /** @type {Array} */\n // @ts-expect-error: Assume static phrasing content.\n const children = fragment.children\n node.children = children\n } else {\n node.alt = value\n }\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitresourcedestinationstring() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.url = data\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitresourcetitlestring() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.title = data\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitresource() {\n setData('inReference')\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onenterreference() {\n setData('referenceType', 'collapsed')\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitreferencestring(token) {\n const label = this.resume()\n const node = this.stack[this.stack.length - 1]\n // @ts-expect-error: stash this on the node, as it might become a reference\n // later.\n node.label = label\n // @ts-expect-error: same as above.\n node.identifier = normalizeIdentifier(\n this.sliceSerialize(token)\n ).toLowerCase()\n setData('referenceType', 'full')\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitcharacterreferencemarker(token) {\n setData('characterReferenceType', token.type)\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitcharacterreferencevalue(token) {\n const data = this.sliceSerialize(token)\n const type = getData('characterReferenceType')\n /** @type {string} */\n let value\n if (type) {\n value = decodeNumericCharacterReference(\n data,\n type === 'characterReferenceMarkerNumeric' ? 10 : 16\n )\n setData('characterReferenceType')\n } else {\n const result = decodeNamedCharacterReference(data)\n value = result\n }\n const tail = this.stack.pop()\n tail.value += value\n tail.position.end = point(token.end)\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitautolinkprotocol(token) {\n onexitdata.call(this, token)\n const node = this.stack[this.stack.length - 1]\n node.url = this.sliceSerialize(token)\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitautolinkemail(token) {\n onexitdata.call(this, token)\n const node = this.stack[this.stack.length - 1]\n node.url = 'mailto:' + this.sliceSerialize(token)\n }\n\n //\n // Creaters.\n //\n\n /** @returns {Blockquote} */\n function blockQuote() {\n return {\n type: 'blockquote',\n children: []\n }\n }\n\n /** @returns {Code} */\n function codeFlow() {\n return {\n type: 'code',\n lang: null,\n meta: null,\n value: ''\n }\n }\n\n /** @returns {InlineCode} */\n function codeText() {\n return {\n type: 'inlineCode',\n value: ''\n }\n }\n\n /** @returns {Definition} */\n function definition() {\n return {\n type: 'definition',\n identifier: '',\n label: null,\n title: null,\n url: ''\n }\n }\n\n /** @returns {Emphasis} */\n function emphasis() {\n return {\n type: 'emphasis',\n children: []\n }\n }\n\n /** @returns {Heading} */\n function heading() {\n // @ts-expect-error `depth` will be set later.\n return {\n type: 'heading',\n depth: undefined,\n children: []\n }\n }\n\n /** @returns {Break} */\n function hardBreak() {\n return {\n type: 'break'\n }\n }\n\n /** @returns {HTML} */\n function html() {\n return {\n type: 'html',\n value: ''\n }\n }\n\n /** @returns {Image} */\n function image() {\n return {\n type: 'image',\n title: null,\n url: '',\n alt: null\n }\n }\n\n /** @returns {Link} */\n function link() {\n return {\n type: 'link',\n title: null,\n url: '',\n children: []\n }\n }\n\n /**\n * @param {Token} token\n * @returns {List}\n */\n function list(token) {\n return {\n type: 'list',\n ordered: token.type === 'listOrdered',\n start: null,\n spread: token._spread,\n children: []\n }\n }\n\n /**\n * @param {Token} token\n * @returns {ListItem}\n */\n function listItem(token) {\n return {\n type: 'listItem',\n spread: token._spread,\n checked: null,\n children: []\n }\n }\n\n /** @returns {Paragraph} */\n function paragraph() {\n return {\n type: 'paragraph',\n children: []\n }\n }\n\n /** @returns {Strong} */\n function strong() {\n return {\n type: 'strong',\n children: []\n }\n }\n\n /** @returns {Text} */\n function text() {\n return {\n type: 'text',\n value: ''\n }\n }\n\n /** @returns {ThematicBreak} */\n function thematicBreak() {\n return {\n type: 'thematicBreak'\n }\n }\n}\n\n/**\n * Copy a point-like value.\n *\n * @param {Point} d\n * Point-like value.\n * @returns {Point}\n * unist point.\n */\nfunction point(d) {\n return {\n line: d.line,\n column: d.column,\n offset: d.offset\n }\n}\n\n/**\n * @param {Config} combined\n * @param {Array>} extensions\n * @returns {void}\n */\nfunction configure(combined, extensions) {\n let index = -1\n while (++index < extensions.length) {\n const value = extensions[index]\n if (Array.isArray(value)) {\n configure(combined, value)\n } else {\n extension(combined, value)\n }\n }\n}\n\n/**\n * @param {Config} combined\n * @param {Extension} extension\n * @returns {void}\n */\nfunction extension(combined, extension) {\n /** @type {keyof Extension} */\n let key\n for (key in extension) {\n if (own.call(extension, key)) {\n if (key === 'canContainEols') {\n const right = extension[key]\n if (right) {\n combined[key].push(...right)\n }\n } else if (key === 'transforms') {\n const right = extension[key]\n if (right) {\n combined[key].push(...right)\n }\n } else if (key === 'enter' || key === 'exit') {\n const right = extension[key]\n if (right) {\n Object.assign(combined[key], right)\n }\n }\n }\n }\n}\n\n/** @type {OnEnterError} */\nfunction defaultOnError(left, right) {\n if (left) {\n throw new Error(\n 'Cannot close `' +\n left.type +\n '` (' +\n stringifyPosition({\n start: left.start,\n end: left.end\n }) +\n '): a different token (`' +\n right.type +\n '`, ' +\n stringifyPosition({\n start: right.start,\n end: right.end\n }) +\n ') is open'\n )\n } else {\n throw new Error(\n 'Cannot close document, a token (`' +\n right.type +\n '`, ' +\n stringifyPosition({\n start: right.start,\n end: right.end\n }) +\n ') is still open'\n )\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Event} Event\n */\n\nimport {subtokenize} from 'micromark-util-subtokenize'\n\n/**\n * @param {Array} events\n * @returns {Array}\n */\nexport function postprocess(events) {\n while (!subtokenize(events)) {\n // Empty\n }\n return events\n}\n","/**\n * @typedef {import('mdast').Root} Root\n * @typedef {import('mdast-util-from-markdown').Options} Options\n */\n\nimport {fromMarkdown} from 'mdast-util-from-markdown'\n\n/**\n * @this {import('unified').Processor}\n * @type {import('unified').Plugin<[Options?] | void[], string, Root>}\n */\nexport default function remarkParse(options) {\n /** @type {import('unified').ParserFunction} */\n const parser = (doc) => {\n // Assume options.\n const settings = /** @type {Options} */ (this.data('settings'))\n\n return fromMarkdown(\n doc,\n Object.assign({}, settings, options, {\n // Note: these options are not in the readme.\n // The goal is for them to be set by plugins on `data` instead of being\n // passed by users.\n extensions: this.data('micromarkExtensions') || [],\n mdastExtensions: this.data('fromMarkdownExtensions') || []\n })\n )\n }\n\n Object.assign(this, {Parser: parser})\n}\n","import {asciiAlphanumeric} from 'micromark-util-character'\nimport {encode} from 'micromark-util-encode'\n/**\n * Make a value safe for injection as a URL.\n *\n * This encodes unsafe characters with percent-encoding and skips already\n * encoded sequences (see `normalizeUri`).\n * Further unsafe characters are encoded as character references (see\n * `micromark-util-encode`).\n *\n * A regex of allowed protocols can be given, in which case the URL is\n * sanitized.\n * For example, `/^(https?|ircs?|mailto|xmpp)$/i` can be used for `a[href]`, or\n * `/^https?$/i` for `img[src]` (this is what `github.com` allows).\n * If the URL includes an unknown protocol (one not matched by `protocol`, such\n * as a dangerous example, `javascript:`), the value is ignored.\n *\n * @param {string | undefined} url\n * URI to sanitize.\n * @param {RegExp | null | undefined} [protocol]\n * Allowed protocols.\n * @returns {string}\n * Sanitized URI.\n */\nexport function sanitizeUri(url, protocol) {\n const value = encode(normalizeUri(url || ''))\n if (!protocol) {\n return value\n }\n const colon = value.indexOf(':')\n const questionMark = value.indexOf('?')\n const numberSign = value.indexOf('#')\n const slash = value.indexOf('/')\n if (\n // If there is no protocol, it’s relative.\n colon < 0 ||\n // If the first colon is after a `?`, `#`, or `/`, it’s not a protocol.\n (slash > -1 && colon > slash) ||\n (questionMark > -1 && colon > questionMark) ||\n (numberSign > -1 && colon > numberSign) ||\n // It is a protocol, it should be allowed.\n protocol.test(value.slice(0, colon))\n ) {\n return value\n }\n return ''\n}\n\n/**\n * Normalize a URL.\n *\n * Encode unsafe characters with percent-encoding, skipping already encoded\n * sequences.\n *\n * @param {string} value\n * URI to normalize.\n * @returns {string}\n * Normalized URI.\n */\nexport function normalizeUri(value) {\n /** @type {Array} */\n const result = []\n let index = -1\n let start = 0\n let skip = 0\n while (++index < value.length) {\n const code = value.charCodeAt(index)\n /** @type {string} */\n let replace = ''\n\n // A correct percent encoded value.\n if (\n code === 37 &&\n asciiAlphanumeric(value.charCodeAt(index + 1)) &&\n asciiAlphanumeric(value.charCodeAt(index + 2))\n ) {\n skip = 2\n }\n // ASCII.\n else if (code < 128) {\n if (!/[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(code))) {\n replace = String.fromCharCode(code)\n }\n }\n // Astral.\n else if (code > 55295 && code < 57344) {\n const next = value.charCodeAt(index + 1)\n\n // A correct surrogate pair.\n if (code < 56320 && next > 56319 && next < 57344) {\n replace = String.fromCharCode(code, next)\n skip = 1\n }\n // Lone surrogate.\n else {\n replace = '\\uFFFD'\n }\n }\n // Unicode.\n else {\n replace = String.fromCharCode(code)\n }\n if (replace) {\n result.push(value.slice(start, index), encodeURIComponent(replace))\n start = index + skip + 1\n replace = ''\n }\n if (skip) {\n index += skip\n skip = 0\n }\n }\n return result.join('') + value.slice(start)\n}\n","/**\n * @typedef {import('unist').Node} Node\n * @typedef {import('unist').Parent} Parent\n */\n\n/**\n * @typedef {Record} Props\n * @typedef {null | undefined | string | Props | TestFunctionAnything | Array} Test\n * Check for an arbitrary node, unaware of TypeScript inferral.\n *\n * @callback TestFunctionAnything\n * Check if a node passes a test, unaware of TypeScript inferral.\n * @param {unknown} this\n * The given context.\n * @param {Node} node\n * A node.\n * @param {number | null | undefined} [index]\n * The node’s position in its parent.\n * @param {Parent | null | undefined} [parent]\n * The node’s parent.\n * @returns {boolean | void}\n * Whether this node passes the test.\n */\n\n/**\n * @template {Node} Kind\n * Node type.\n * @typedef {Kind['type'] | Partial | TestFunctionPredicate | Array | TestFunctionPredicate>} PredicateTest\n * Check for a node that can be inferred by TypeScript.\n */\n\n/**\n * Check if a node passes a certain test.\n *\n * @template {Node} Kind\n * Node type.\n * @callback TestFunctionPredicate\n * Complex test function for a node that can be inferred by TypeScript.\n * @param {Node} node\n * A node.\n * @param {number | null | undefined} [index]\n * The node’s position in its parent.\n * @param {Parent | null | undefined} [parent]\n * The node’s parent.\n * @returns {node is Kind}\n * Whether this node passes the test.\n */\n\n/**\n * @callback AssertAnything\n * Check that an arbitrary value is a node, unaware of TypeScript inferral.\n * @param {unknown} [node]\n * Anything (typically a node).\n * @param {number | null | undefined} [index]\n * The node’s position in its parent.\n * @param {Parent | null | undefined} [parent]\n * The node’s parent.\n * @returns {boolean}\n * Whether this is a node and passes a test.\n */\n\n/**\n * Check if a node is a node and passes a certain node test.\n *\n * @template {Node} Kind\n * Node type.\n * @callback AssertPredicate\n * Check that an arbitrary value is a specific node, aware of TypeScript.\n * @param {unknown} [node]\n * Anything (typically a node).\n * @param {number | null | undefined} [index]\n * The node’s position in its parent.\n * @param {Parent | null | undefined} [parent]\n * The node’s parent.\n * @returns {node is Kind}\n * Whether this is a node and passes a test.\n */\n\n/**\n * Check if `node` is a `Node` and whether it passes the given test.\n *\n * @param node\n * Thing to check, typically `Node`.\n * @param test\n * A check for a specific node.\n * @param index\n * The node’s position in its parent.\n * @param parent\n * The node’s parent.\n * @returns\n * Whether `node` is a node and passes a test.\n */\nexport const is =\n /**\n * @type {(\n * (() => false) &\n * ((node: unknown, test: PredicateTest, index: number, parent: Parent, context?: unknown) => node is Kind) &\n * ((node: unknown, test: PredicateTest, index?: null | undefined, parent?: null | undefined, context?: unknown) => node is Kind) &\n * ((node: unknown, test: Test, index: number, parent: Parent, context?: unknown) => boolean) &\n * ((node: unknown, test?: Test, index?: null | undefined, parent?: null | undefined, context?: unknown) => boolean)\n * )}\n */\n (\n /**\n * @param {unknown} [node]\n * @param {Test} [test]\n * @param {number | null | undefined} [index]\n * @param {Parent | null | undefined} [parent]\n * @param {unknown} [context]\n * @returns {boolean}\n */\n // eslint-disable-next-line max-params\n function is(node, test, index, parent, context) {\n const check = convert(test)\n\n if (\n index !== undefined &&\n index !== null &&\n (typeof index !== 'number' ||\n index < 0 ||\n index === Number.POSITIVE_INFINITY)\n ) {\n throw new Error('Expected positive finite index')\n }\n\n if (\n parent !== undefined &&\n parent !== null &&\n (!is(parent) || !parent.children)\n ) {\n throw new Error('Expected parent node')\n }\n\n if (\n (parent === undefined || parent === null) !==\n (index === undefined || index === null)\n ) {\n throw new Error('Expected both parent and index')\n }\n\n // @ts-expect-error Looks like a node.\n return node && node.type && typeof node.type === 'string'\n ? Boolean(check.call(context, node, index, parent))\n : false\n }\n )\n\n/**\n * Generate an assertion from a test.\n *\n * Useful if you’re going to test many nodes, for example when creating a\n * utility where something else passes a compatible test.\n *\n * The created function is a bit faster because it expects valid input only:\n * a `node`, `index`, and `parent`.\n *\n * @param test\n * * when nullish, checks if `node` is a `Node`.\n * * when `string`, works like passing `(node) => node.type === test`.\n * * when `function` checks if function passed the node is true.\n * * when `object`, checks that all keys in test are in node, and that they have (strictly) equal values.\n * * when `array`, checks if any one of the subtests pass.\n * @returns\n * An assertion.\n */\nexport const convert =\n /**\n * @type {(\n * ((test: PredicateTest) => AssertPredicate) &\n * ((test?: Test) => AssertAnything)\n * )}\n */\n (\n /**\n * @param {Test} [test]\n * @returns {AssertAnything}\n */\n function (test) {\n if (test === undefined || test === null) {\n return ok\n }\n\n if (typeof test === 'string') {\n return typeFactory(test)\n }\n\n if (typeof test === 'object') {\n return Array.isArray(test) ? anyFactory(test) : propsFactory(test)\n }\n\n if (typeof test === 'function') {\n return castFactory(test)\n }\n\n throw new Error('Expected function, string, or object as test')\n }\n )\n\n/**\n * @param {Array} tests\n * @returns {AssertAnything}\n */\nfunction anyFactory(tests) {\n /** @type {Array} */\n const checks = []\n let index = -1\n\n while (++index < tests.length) {\n checks[index] = convert(tests[index])\n }\n\n return castFactory(any)\n\n /**\n * @this {unknown}\n * @param {Array} parameters\n * @returns {boolean}\n */\n function any(...parameters) {\n let index = -1\n\n while (++index < checks.length) {\n if (checks[index].call(this, ...parameters)) return true\n }\n\n return false\n }\n}\n\n/**\n * Turn an object into a test for a node with a certain fields.\n *\n * @param {Props} check\n * @returns {AssertAnything}\n */\nfunction propsFactory(check) {\n return castFactory(all)\n\n /**\n * @param {Node} node\n * @returns {boolean}\n */\n function all(node) {\n /** @type {string} */\n let key\n\n for (key in check) {\n // @ts-expect-error: hush, it sure works as an index.\n if (node[key] !== check[key]) return false\n }\n\n return true\n }\n}\n\n/**\n * Turn a string into a test for a node with a certain type.\n *\n * @param {string} check\n * @returns {AssertAnything}\n */\nfunction typeFactory(check) {\n return castFactory(type)\n\n /**\n * @param {Node} node\n */\n function type(node) {\n return node && node.type === check\n }\n}\n\n/**\n * Turn a custom test into a test for a node that passes that test.\n *\n * @param {TestFunctionAnything} check\n * @returns {AssertAnything}\n */\nfunction castFactory(check) {\n return assertion\n\n /**\n * @this {unknown}\n * @param {unknown} node\n * @param {Array} parameters\n * @returns {boolean}\n */\n function assertion(node, ...parameters) {\n return Boolean(\n node &&\n typeof node === 'object' &&\n 'type' in node &&\n // @ts-expect-error: fine.\n Boolean(check.call(this, node, ...parameters))\n )\n }\n}\n\nfunction ok() {\n return true\n}\n","/**\n * @typedef {import('unist').Node} Node\n * @typedef {import('unist').Parent} Parent\n * @typedef {import('unist-util-is').Test} Test\n */\n\n/**\n * @typedef {boolean | 'skip'} Action\n * Union of the action types.\n *\n * @typedef {number} Index\n * Move to the sibling at `index` next (after node itself is completely\n * traversed).\n *\n * Useful if mutating the tree, such as removing the node the visitor is\n * currently on, or any of its previous siblings.\n * Results less than 0 or greater than or equal to `children.length` stop\n * traversing the parent.\n *\n * @typedef {[(Action | null | undefined | void)?, (Index | null | undefined)?]} ActionTuple\n * List with one or two values, the first an action, the second an index.\n *\n * @typedef {Action | ActionTuple | Index | null | undefined | void} VisitorResult\n * Any value that can be returned from a visitor.\n */\n\n/**\n * @template {Node} [Visited=Node]\n * Visited node type.\n * @template {Parent} [Ancestor=Parent]\n * Ancestor type.\n * @callback Visitor\n * Handle a node (matching `test`, if given).\n *\n * Visitors are free to transform `node`.\n * They can also transform the parent of node (the last of `ancestors`).\n *\n * Replacing `node` itself, if `SKIP` is not returned, still causes its\n * descendants to be walked (which is a bug).\n *\n * When adding or removing previous siblings of `node` (or next siblings, in\n * case of reverse), the `Visitor` should return a new `Index` to specify the\n * sibling to traverse after `node` is traversed.\n * Adding or removing next siblings of `node` (or previous siblings, in case\n * of reverse) is handled as expected without needing to return a new `Index`.\n *\n * Removing the children property of an ancestor still results in them being\n * traversed.\n * @param {Visited} node\n * Found node.\n * @param {Array} ancestors\n * Ancestors of `node`.\n * @returns {VisitorResult}\n * What to do next.\n *\n * An `Index` is treated as a tuple of `[CONTINUE, Index]`.\n * An `Action` is treated as a tuple of `[Action]`.\n *\n * Passing a tuple back only makes sense if the `Action` is `SKIP`.\n * When the `Action` is `EXIT`, that action can be returned.\n * When the `Action` is `CONTINUE`, `Index` can be returned.\n */\n\n/**\n * @template {Node} [Tree=Node]\n * Tree type.\n * @template {Test} [Check=string]\n * Test type.\n * @typedef {Visitor, Check>, Extract, Parent>>} BuildVisitor\n * Build a typed `Visitor` function from a tree and a test.\n *\n * It will infer which values are passed as `node` and which as `parents`.\n */\n\nimport {convert} from 'unist-util-is'\nimport {color} from './color.js'\n\n/**\n * Continue traversing as normal.\n */\nexport const CONTINUE = true\n\n/**\n * Stop traversing immediately.\n */\nexport const EXIT = false\n\n/**\n * Do not traverse this node’s children.\n */\nexport const SKIP = 'skip'\n\n/**\n * Visit nodes, with ancestral information.\n *\n * This algorithm performs *depth-first* *tree traversal* in *preorder*\n * (**NLR**) or if `reverse` is given, in *reverse preorder* (**NRL**).\n *\n * You can choose for which nodes `visitor` is called by passing a `test`.\n * For complex tests, you should test yourself in `visitor`, as it will be\n * faster and will have improved type information.\n *\n * Walking the tree is an intensive task.\n * Make use of the return values of the visitor when possible.\n * Instead of walking a tree multiple times, walk it once, use `unist-util-is`\n * to check if a node matches, and then perform different operations.\n *\n * You can change the tree.\n * See `Visitor` for more info.\n *\n * @param tree\n * Tree to traverse.\n * @param test\n * `unist-util-is`-compatible test\n * @param visitor\n * Handle each node.\n * @param reverse\n * Traverse in reverse preorder (NRL) instead of the default preorder (NLR).\n * @returns\n * Nothing.\n */\nexport const visitParents =\n /**\n * @type {(\n * ((tree: Tree, test: Check, visitor: BuildVisitor, reverse?: boolean | null | undefined) => void) &\n * ((tree: Tree, visitor: BuildVisitor, reverse?: boolean | null | undefined) => void)\n * )}\n */\n (\n /**\n * @param {Node} tree\n * @param {Test} test\n * @param {Visitor} visitor\n * @param {boolean | null | undefined} [reverse]\n * @returns {void}\n */\n function (tree, test, visitor, reverse) {\n if (typeof test === 'function' && typeof visitor !== 'function') {\n reverse = visitor\n // @ts-expect-error no visitor given, so `visitor` is test.\n visitor = test\n test = null\n }\n\n const is = convert(test)\n const step = reverse ? -1 : 1\n\n factory(tree, undefined, [])()\n\n /**\n * @param {Node} node\n * @param {number | undefined} index\n * @param {Array} parents\n */\n function factory(node, index, parents) {\n /** @type {Record} */\n // @ts-expect-error: hush\n const value = node && typeof node === 'object' ? node : {}\n\n if (typeof value.type === 'string') {\n const name =\n // `hast`\n typeof value.tagName === 'string'\n ? value.tagName\n : // `xast`\n typeof value.name === 'string'\n ? value.name\n : undefined\n\n Object.defineProperty(visit, 'name', {\n value:\n 'node (' + color(node.type + (name ? '<' + name + '>' : '')) + ')'\n })\n }\n\n return visit\n\n function visit() {\n /** @type {ActionTuple} */\n let result = []\n /** @type {ActionTuple} */\n let subresult\n /** @type {number} */\n let offset\n /** @type {Array} */\n let grandparents\n\n if (!test || is(node, index, parents[parents.length - 1] || null)) {\n result = toResult(visitor(node, parents))\n\n if (result[0] === EXIT) {\n return result\n }\n }\n\n // @ts-expect-error looks like a parent.\n if (node.children && result[0] !== SKIP) {\n // @ts-expect-error looks like a parent.\n offset = (reverse ? node.children.length : -1) + step\n // @ts-expect-error looks like a parent.\n grandparents = parents.concat(node)\n\n // @ts-expect-error looks like a parent.\n while (offset > -1 && offset < node.children.length) {\n // @ts-expect-error looks like a parent.\n subresult = factory(node.children[offset], offset, grandparents)()\n\n if (subresult[0] === EXIT) {\n return subresult\n }\n\n offset =\n typeof subresult[1] === 'number' ? subresult[1] : offset + step\n }\n }\n\n return result\n }\n }\n }\n )\n\n/**\n * Turn a return value into a clean result.\n *\n * @param {VisitorResult} value\n * Valid return values from visitors.\n * @returns {ActionTuple}\n * Clean result.\n */\nfunction toResult(value) {\n if (Array.isArray(value)) {\n return value\n }\n\n if (typeof value === 'number') {\n return [CONTINUE, value]\n }\n\n return [value]\n}\n","/**\n * @typedef {import('unist').Node} Node\n * @typedef {import('unist').Parent} Parent\n * @typedef {import('unist-util-is').Test} Test\n * @typedef {import('unist-util-visit-parents').VisitorResult} VisitorResult\n */\n\n/**\n * Check if `Child` can be a child of `Ancestor`.\n *\n * Returns the ancestor when `Child` can be a child of `Ancestor`, or returns\n * `never`.\n *\n * @template {Node} Ancestor\n * Node type.\n * @template {Node} Child\n * Node type.\n * @typedef {(\n * Ancestor extends Parent\n * ? Child extends Ancestor['children'][number]\n * ? Ancestor\n * : never\n * : never\n * )} ParentsOf\n */\n\n/**\n * @template {Node} [Visited=Node]\n * Visited node type.\n * @template {Parent} [Ancestor=Parent]\n * Ancestor type.\n * @callback Visitor\n * Handle a node (matching `test`, if given).\n *\n * Visitors are free to transform `node`.\n * They can also transform `parent`.\n *\n * Replacing `node` itself, if `SKIP` is not returned, still causes its\n * descendants to be walked (which is a bug).\n *\n * When adding or removing previous siblings of `node` (or next siblings, in\n * case of reverse), the `Visitor` should return a new `Index` to specify the\n * sibling to traverse after `node` is traversed.\n * Adding or removing next siblings of `node` (or previous siblings, in case\n * of reverse) is handled as expected without needing to return a new `Index`.\n *\n * Removing the children property of `parent` still results in them being\n * traversed.\n * @param {Visited} node\n * Found node.\n * @param {Visited extends Node ? number | null : never} index\n * Index of `node` in `parent`.\n * @param {Ancestor extends Node ? Ancestor | null : never} parent\n * Parent of `node`.\n * @returns {VisitorResult}\n * What to do next.\n *\n * An `Index` is treated as a tuple of `[CONTINUE, Index]`.\n * An `Action` is treated as a tuple of `[Action]`.\n *\n * Passing a tuple back only makes sense if the `Action` is `SKIP`.\n * When the `Action` is `EXIT`, that action can be returned.\n * When the `Action` is `CONTINUE`, `Index` can be returned.\n */\n\n/**\n * Build a typed `Visitor` function from a node and all possible parents.\n *\n * It will infer which values are passed as `node` and which as `parent`.\n *\n * @template {Node} Visited\n * Node type.\n * @template {Parent} Ancestor\n * Parent type.\n * @typedef {Visitor>} BuildVisitorFromMatch\n */\n\n/**\n * Build a typed `Visitor` function from a list of descendants and a test.\n *\n * It will infer which values are passed as `node` and which as `parent`.\n *\n * @template {Node} Descendant\n * Node type.\n * @template {Test} Check\n * Test type.\n * @typedef {(\n * BuildVisitorFromMatch<\n * import('unist-util-visit-parents/complex-types.js').Matches,\n * Extract\n * >\n * )} BuildVisitorFromDescendants\n */\n\n/**\n * Build a typed `Visitor` function from a tree and a test.\n *\n * It will infer which values are passed as `node` and which as `parent`.\n *\n * @template {Node} [Tree=Node]\n * Node type.\n * @template {Test} [Check=string]\n * Test type.\n * @typedef {(\n * BuildVisitorFromDescendants<\n * import('unist-util-visit-parents/complex-types.js').InclusiveDescendant,\n * Check\n * >\n * )} BuildVisitor\n */\n\nimport {visitParents} from 'unist-util-visit-parents'\n\n/**\n * Visit nodes.\n *\n * This algorithm performs *depth-first* *tree traversal* in *preorder*\n * (**NLR**) or if `reverse` is given, in *reverse preorder* (**NRL**).\n *\n * You can choose for which nodes `visitor` is called by passing a `test`.\n * For complex tests, you should test yourself in `visitor`, as it will be\n * faster and will have improved type information.\n *\n * Walking the tree is an intensive task.\n * Make use of the return values of the visitor when possible.\n * Instead of walking a tree multiple times, walk it once, use `unist-util-is`\n * to check if a node matches, and then perform different operations.\n *\n * You can change the tree.\n * See `Visitor` for more info.\n *\n * @param tree\n * Tree to traverse.\n * @param test\n * `unist-util-is`-compatible test\n * @param visitor\n * Handle each node.\n * @param reverse\n * Traverse in reverse preorder (NRL) instead of the default preorder (NLR).\n * @returns\n * Nothing.\n */\nexport const visit =\n /**\n * @type {(\n * ((tree: Tree, test: Check, visitor: BuildVisitor, reverse?: boolean | null | undefined) => void) &\n * ((tree: Tree, visitor: BuildVisitor, reverse?: boolean | null | undefined) => void)\n * )}\n */\n (\n /**\n * @param {Node} tree\n * @param {Test} test\n * @param {Visitor} visitor\n * @param {boolean | null | undefined} [reverse]\n * @returns {void}\n */\n function (tree, test, visitor, reverse) {\n if (typeof test === 'function' && typeof visitor !== 'function') {\n reverse = visitor\n visitor = test\n test = null\n }\n\n visitParents(tree, test, overload, reverse)\n\n /**\n * @param {Node} node\n * @param {Array} parents\n */\n function overload(node, parents) {\n const parent = parents[parents.length - 1]\n return visitor(\n node,\n parent ? parent.children.indexOf(node) : null,\n parent\n )\n }\n }\n )\n\nexport {CONTINUE, EXIT, SKIP} from 'unist-util-visit-parents'\n","/**\n * @typedef {import('unist').Position} Position\n * @typedef {import('unist').Node} Node\n * @typedef {import('unist').Point} Point\n */\n\n/**\n * @typedef NodeLike\n * @property {string} type\n * @property {PositionLike | null | undefined} [position]\n *\n * @typedef PositionLike\n * @property {PointLike | null | undefined} [start]\n * @property {PointLike | null | undefined} [end]\n *\n * @typedef PointLike\n * @property {number | null | undefined} [line]\n * @property {number | null | undefined} [column]\n * @property {number | null | undefined} [offset]\n */\n\n/**\n * Get the starting point of `node`.\n *\n * @param node\n * Node.\n * @returns\n * Point.\n */\nexport const pointStart = point('start')\n\n/**\n * Get the ending point of `node`.\n *\n * @param node\n * Node.\n * @returns\n * Point.\n */\nexport const pointEnd = point('end')\n\n/**\n * Get the positional info of `node`.\n *\n * @param {NodeLike | Node | null | undefined} [node]\n * Node.\n * @returns {Position}\n * Position.\n */\nexport function position(node) {\n return {start: pointStart(node), end: pointEnd(node)}\n}\n\n/**\n * Get the positional info of `node`.\n *\n * @param {'start' | 'end'} type\n * Side.\n * @returns\n * Getter.\n */\nfunction point(type) {\n return point\n\n /**\n * Get the point info of `node` at a bound side.\n *\n * @param {NodeLike | Node | null | undefined} [node]\n * @returns {Point}\n */\n function point(node) {\n const point = (node && node.position && node.position[type]) || {}\n\n // To do: next major: don’t return points when invalid.\n return {\n // @ts-expect-error: in practice, null is allowed.\n line: point.line || null,\n // @ts-expect-error: in practice, null is allowed.\n column: point.column || null,\n // @ts-expect-error: in practice, null is allowed.\n offset: point.offset > -1 ? point.offset : null\n }\n }\n}\n","/**\n * @typedef {import('mdast').Root} Root\n * @typedef {import('mdast').Content} Content\n * @typedef {import('mdast').Definition} Definition\n */\n\n/**\n * @typedef {Root | Content} Node\n *\n * @callback GetDefinition\n * Get a definition by identifier.\n * @param {string | null | undefined} [identifier]\n * Identifier of definition.\n * @returns {Definition | null}\n * Definition corresponding to `identifier` or `null`.\n */\n\nimport {visit} from 'unist-util-visit'\n\nconst own = {}.hasOwnProperty\n\n/**\n * Find definitions in `tree`.\n *\n * Uses CommonMark precedence, which means that earlier definitions are\n * preferred over duplicate later definitions.\n *\n * @param {Node} tree\n * Tree to check.\n * @returns {GetDefinition}\n * Getter.\n */\nexport function definitions(tree) {\n /** @type {Record} */\n const cache = Object.create(null)\n\n if (!tree || !tree.type) {\n throw new Error('mdast-util-definitions expected node')\n }\n\n visit(tree, 'definition', (definition) => {\n const id = clean(definition.identifier)\n if (id && !own.call(cache, id)) {\n cache[id] = definition\n }\n })\n\n return definition\n\n /** @type {GetDefinition} */\n function definition(identifier) {\n const id = clean(identifier)\n // To do: next major: return `undefined` when not found.\n return id && own.call(cache, id) ? cache[id] : null\n }\n}\n\n/**\n * @param {string | null | undefined} [value]\n * @returns {string}\n */\nfunction clean(value) {\n return String(value || '').toUpperCase()\n}\n","/**\n * @typedef {import('mdast').FootnoteReference} FootnoteReference\n * @typedef {import('hast').Element} Element\n * @typedef {import('../state.js').State} State\n */\n\nimport {normalizeUri} from 'micromark-util-sanitize-uri'\n\n/**\n * Turn an mdast `footnoteReference` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {FootnoteReference} node\n * mdast node.\n * @returns {Element}\n * hast node.\n */\nexport function footnoteReference(state, node) {\n const id = String(node.identifier).toUpperCase()\n const safeId = normalizeUri(id.toLowerCase())\n const index = state.footnoteOrder.indexOf(id)\n /** @type {number} */\n let counter\n\n if (index === -1) {\n state.footnoteOrder.push(id)\n state.footnoteCounts[id] = 1\n counter = state.footnoteOrder.length\n } else {\n state.footnoteCounts[id]++\n counter = index + 1\n }\n\n const reuseCounter = state.footnoteCounts[id]\n\n /** @type {Element} */\n const link = {\n type: 'element',\n tagName: 'a',\n properties: {\n href: '#' + state.clobberPrefix + 'fn-' + safeId,\n id:\n state.clobberPrefix +\n 'fnref-' +\n safeId +\n (reuseCounter > 1 ? '-' + reuseCounter : ''),\n dataFootnoteRef: true,\n ariaDescribedBy: ['footnote-label']\n },\n children: [{type: 'text', value: String(counter)}]\n }\n state.patch(node, link)\n\n /** @type {Element} */\n const sup = {\n type: 'element',\n tagName: 'sup',\n properties: {},\n children: [link]\n }\n state.patch(node, sup)\n return state.applyData(node, sup)\n}\n","/**\n * @typedef {import('hast').ElementContent} ElementContent\n *\n * @typedef {import('mdast').Content} Content\n * @typedef {import('mdast').Reference} Reference\n * @typedef {import('mdast').Root} Root\n *\n * @typedef {import('./state.js').State} State\n */\n\n/**\n * @typedef {Root | Content} Nodes\n * @typedef {Extract} References\n */\n\n// To do: next major: always return array.\n\n/**\n * Return the content of a reference without definition as plain text.\n *\n * @param {State} state\n * Info passed around.\n * @param {References} node\n * Reference node (image, link).\n * @returns {ElementContent | Array}\n * hast content.\n */\nexport function revert(state, node) {\n const subtype = node.referenceType\n let suffix = ']'\n\n if (subtype === 'collapsed') {\n suffix += '[]'\n } else if (subtype === 'full') {\n suffix += '[' + (node.label || node.identifier) + ']'\n }\n\n if (node.type === 'imageReference') {\n return {type: 'text', value: '![' + node.alt + suffix}\n }\n\n const contents = state.all(node)\n const head = contents[0]\n\n if (head && head.type === 'text') {\n head.value = '[' + head.value\n } else {\n contents.unshift({type: 'text', value: '['})\n }\n\n const tail = contents[contents.length - 1]\n\n if (tail && tail.type === 'text') {\n tail.value += suffix\n } else {\n contents.push({type: 'text', value: suffix})\n }\n\n return contents\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').ElementContent} ElementContent\n * @typedef {import('hast').Properties} Properties\n * @typedef {import('mdast').Content} Content\n * @typedef {import('mdast').ListItem} ListItem\n * @typedef {import('mdast').Parent} Parent\n * @typedef {import('mdast').Root} Root\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * @typedef {Root | Content} Nodes\n * @typedef {Extract} Parents\n */\n\n/**\n * Turn an mdast `listItem` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {ListItem} node\n * mdast node.\n * @param {Parents | null | undefined} parent\n * Parent of `node`.\n * @returns {Element}\n * hast node.\n */\nexport function listItem(state, node, parent) {\n const results = state.all(node)\n const loose = parent ? listLoose(parent) : listItemLoose(node)\n /** @type {Properties} */\n const properties = {}\n /** @type {Array} */\n const children = []\n\n if (typeof node.checked === 'boolean') {\n const head = results[0]\n /** @type {Element} */\n let paragraph\n\n if (head && head.type === 'element' && head.tagName === 'p') {\n paragraph = head\n } else {\n paragraph = {type: 'element', tagName: 'p', properties: {}, children: []}\n results.unshift(paragraph)\n }\n\n if (paragraph.children.length > 0) {\n paragraph.children.unshift({type: 'text', value: ' '})\n }\n\n paragraph.children.unshift({\n type: 'element',\n tagName: 'input',\n properties: {type: 'checkbox', checked: node.checked, disabled: true},\n children: []\n })\n\n // According to github-markdown-css, this class hides bullet.\n // See: .\n properties.className = ['task-list-item']\n }\n\n let index = -1\n\n while (++index < results.length) {\n const child = results[index]\n\n // Add eols before nodes, except if this is a loose, first paragraph.\n if (\n loose ||\n index !== 0 ||\n child.type !== 'element' ||\n child.tagName !== 'p'\n ) {\n children.push({type: 'text', value: '\\n'})\n }\n\n if (child.type === 'element' && child.tagName === 'p' && !loose) {\n children.push(...child.children)\n } else {\n children.push(child)\n }\n }\n\n const tail = results[results.length - 1]\n\n // Add a final eol.\n if (tail && (loose || tail.type !== 'element' || tail.tagName !== 'p')) {\n children.push({type: 'text', value: '\\n'})\n }\n\n /** @type {Element} */\n const result = {type: 'element', tagName: 'li', properties, children}\n state.patch(node, result)\n return state.applyData(node, result)\n}\n\n/**\n * @param {Parents} node\n * @return {Boolean}\n */\nfunction listLoose(node) {\n let loose = false\n if (node.type === 'list') {\n loose = node.spread || false\n const children = node.children\n let index = -1\n\n while (!loose && ++index < children.length) {\n loose = listItemLoose(children[index])\n }\n }\n\n return loose\n}\n\n/**\n * @param {ListItem} node\n * @return {Boolean}\n */\nfunction listItemLoose(node) {\n const spread = node.spread\n\n return spread === undefined || spread === null\n ? node.children.length > 1\n : spread\n}\n","const tab = 9 /* `\\t` */\nconst space = 32 /* ` ` */\n\n/**\n * Remove initial and final spaces and tabs at the line breaks in `value`.\n * Does not trim initial and final spaces and tabs of the value itself.\n *\n * @param {string} value\n * Value to trim.\n * @returns {string}\n * Trimmed value.\n */\nexport function trimLines(value) {\n const source = String(value)\n const search = /\\r?\\n|\\r/g\n let match = search.exec(source)\n let last = 0\n /** @type {Array} */\n const lines = []\n\n while (match) {\n lines.push(\n trimLine(source.slice(last, match.index), last > 0, true),\n match[0]\n )\n\n last = match.index + match[0].length\n match = search.exec(source)\n }\n\n lines.push(trimLine(source.slice(last), last > 0, false))\n\n return lines.join('')\n}\n\n/**\n * @param {string} value\n * Line to trim.\n * @param {boolean} start\n * Whether to trim the start of the line.\n * @param {boolean} end\n * Whether to trim the end of the line.\n * @returns {string}\n * Trimmed line.\n */\nfunction trimLine(value, start, end) {\n let startIndex = 0\n let endIndex = value.length\n\n if (start) {\n let code = value.codePointAt(startIndex)\n\n while (code === tab || code === space) {\n startIndex++\n code = value.codePointAt(startIndex)\n }\n }\n\n if (end) {\n let code = value.codePointAt(endIndex - 1)\n\n while (code === tab || code === space) {\n endIndex--\n code = value.codePointAt(endIndex - 1)\n }\n }\n\n return endIndex > startIndex ? value.slice(startIndex, endIndex) : ''\n}\n","import {blockquote} from './blockquote.js'\nimport {hardBreak} from './break.js'\nimport {code} from './code.js'\nimport {strikethrough} from './delete.js'\nimport {emphasis} from './emphasis.js'\nimport {footnoteReference} from './footnote-reference.js'\nimport {footnote} from './footnote.js'\nimport {heading} from './heading.js'\nimport {html} from './html.js'\nimport {imageReference} from './image-reference.js'\nimport {image} from './image.js'\nimport {inlineCode} from './inline-code.js'\nimport {linkReference} from './link-reference.js'\nimport {link} from './link.js'\nimport {listItem} from './list-item.js'\nimport {list} from './list.js'\nimport {paragraph} from './paragraph.js'\nimport {root} from './root.js'\nimport {strong} from './strong.js'\nimport {table} from './table.js'\nimport {tableRow} from './table-row.js'\nimport {tableCell} from './table-cell.js'\nimport {text} from './text.js'\nimport {thematicBreak} from './thematic-break.js'\n\n/**\n * Default handlers for nodes.\n */\nexport const handlers = {\n blockquote,\n break: hardBreak,\n code,\n delete: strikethrough,\n emphasis,\n footnoteReference,\n footnote,\n heading,\n html,\n imageReference,\n image,\n inlineCode,\n linkReference,\n link,\n listItem,\n list,\n paragraph,\n root,\n strong,\n table,\n tableCell,\n tableRow,\n text,\n thematicBreak,\n toml: ignore,\n yaml: ignore,\n definition: ignore,\n footnoteDefinition: ignore\n}\n\n// Return nothing for nodes that are ignored.\nfunction ignore() {\n // To do: next major: return `undefined`.\n return null\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').Blockquote} Blockquote\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `blockquote` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {Blockquote} node\n * mdast node.\n * @returns {Element}\n * hast node.\n */\nexport function blockquote(state, node) {\n /** @type {Element} */\n const result = {\n type: 'element',\n tagName: 'blockquote',\n properties: {},\n children: state.wrap(state.all(node), true)\n }\n state.patch(node, result)\n return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').Text} Text\n * @typedef {import('mdast').Break} Break\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `break` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {Break} node\n * mdast node.\n * @returns {Array}\n * hast element content.\n */\nexport function hardBreak(state, node) {\n /** @type {Element} */\n const result = {type: 'element', tagName: 'br', properties: {}, children: []}\n state.patch(node, result)\n return [state.applyData(node, result), {type: 'text', value: '\\n'}]\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').Properties} Properties\n * @typedef {import('mdast').Code} Code\n * @typedef {import('../state.js').State} State\n\n */\n\n/**\n * Turn an mdast `code` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {Code} node\n * mdast node.\n * @returns {Element}\n * hast node.\n */\nexport function code(state, node) {\n const value = node.value ? node.value + '\\n' : ''\n // To do: next major, use `node.lang` w/o regex, the splitting’s been going\n // on for years in remark now.\n const lang = node.lang ? node.lang.match(/^[^ \\t]+(?=[ \\t]|$)/) : null\n /** @type {Properties} */\n const properties = {}\n\n if (lang) {\n properties.className = ['language-' + lang]\n }\n\n // Create ``.\n /** @type {Element} */\n let result = {\n type: 'element',\n tagName: 'code',\n properties,\n children: [{type: 'text', value}]\n }\n\n if (node.meta) {\n result.data = {meta: node.meta}\n }\n\n state.patch(node, result)\n result = state.applyData(node, result)\n\n // Create `
`.\n  result = {type: 'element', tagName: 'pre', properties: {}, children: [result]}\n  state.patch(node, result)\n  return result\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').Delete} Delete\n * @typedef {import('../state.js').State} State\n\n */\n\n/**\n * Turn an mdast `delete` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {Delete} node\n *   mdast node.\n * @returns {Element}\n *   hast node.\n */\nexport function strikethrough(state, node) {\n  /** @type {Element} */\n  const result = {\n    type: 'element',\n    tagName: 'del',\n    properties: {},\n    children: state.all(node)\n  }\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').Emphasis} Emphasis\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `emphasis` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {Emphasis} node\n *   mdast node.\n * @returns {Element}\n *   hast node.\n */\nexport function emphasis(state, node) {\n  /** @type {Element} */\n  const result = {\n    type: 'element',\n    tagName: 'em',\n    properties: {},\n    children: state.all(node)\n  }\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').Footnote} Footnote\n * @typedef {import('../state.js').State} State\n */\n\nimport {footnoteReference} from './footnote-reference.js'\n\n// To do: when both:\n// * \n// * \n// …are archived, remove this (also from mdast).\n// These inline notes are not used in GFM.\n\n/**\n * Turn an mdast `footnote` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {Footnote} node\n *   mdast node.\n * @returns {Element}\n *   hast node.\n */\nexport function footnote(state, node) {\n  const footnoteById = state.footnoteById\n  let no = 1\n\n  while (no in footnoteById) no++\n\n  const identifier = String(no)\n\n  footnoteById[identifier] = {\n    type: 'footnoteDefinition',\n    identifier,\n    children: [{type: 'paragraph', children: node.children}],\n    position: node.position\n  }\n\n  return footnoteReference(state, {\n    type: 'footnoteReference',\n    identifier,\n    position: node.position\n  })\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').Heading} Heading\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `heading` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {Heading} node\n *   mdast node.\n * @returns {Element}\n *   hast node.\n */\nexport function heading(state, node) {\n  /** @type {Element} */\n  const result = {\n    type: 'element',\n    tagName: 'h' + node.depth,\n    properties: {},\n    children: state.all(node)\n  }\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').HTML} Html\n * @typedef {import('../state.js').State} State\n * @typedef {import('../../index.js').Raw} Raw\n */\n\n/**\n * Turn an mdast `html` node into hast (`raw` node in dangerous mode, otherwise\n * nothing).\n *\n * @param {State} state\n *   Info passed around.\n * @param {Html} node\n *   mdast node.\n * @returns {Raw | Element | null}\n *   hast node.\n */\nexport function html(state, node) {\n  if (state.dangerous) {\n    /** @type {Raw} */\n    const result = {type: 'raw', value: node.value}\n    state.patch(node, result)\n    return state.applyData(node, result)\n  }\n\n  // To do: next major: return `undefined`.\n  return null\n}\n","/**\n * @typedef {import('hast').ElementContent} ElementContent\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').Properties} Properties\n * @typedef {import('mdast').ImageReference} ImageReference\n * @typedef {import('../state.js').State} State\n */\n\nimport {normalizeUri} from 'micromark-util-sanitize-uri'\nimport {revert} from '../revert.js'\n\n/**\n * Turn an mdast `imageReference` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {ImageReference} node\n *   mdast node.\n * @returns {ElementContent | Array}\n *   hast node.\n */\nexport function imageReference(state, node) {\n  const def = state.definition(node.identifier)\n\n  if (!def) {\n    return revert(state, node)\n  }\n\n  /** @type {Properties} */\n  const properties = {src: normalizeUri(def.url || ''), alt: node.alt}\n\n  if (def.title !== null && def.title !== undefined) {\n    properties.title = def.title\n  }\n\n  /** @type {Element} */\n  const result = {type: 'element', tagName: 'img', properties, children: []}\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').Properties} Properties\n * @typedef {import('mdast').Image} Image\n * @typedef {import('../state.js').State} State\n */\n\nimport {normalizeUri} from 'micromark-util-sanitize-uri'\n\n/**\n * Turn an mdast `image` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {Image} node\n *   mdast node.\n * @returns {Element}\n *   hast node.\n */\nexport function image(state, node) {\n  /** @type {Properties} */\n  const properties = {src: normalizeUri(node.url)}\n\n  if (node.alt !== null && node.alt !== undefined) {\n    properties.alt = node.alt\n  }\n\n  if (node.title !== null && node.title !== undefined) {\n    properties.title = node.title\n  }\n\n  /** @type {Element} */\n  const result = {type: 'element', tagName: 'img', properties, children: []}\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').Text} Text\n * @typedef {import('mdast').InlineCode} InlineCode\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `inlineCode` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {InlineCode} node\n *   mdast node.\n * @returns {Element}\n *   hast node.\n */\nexport function inlineCode(state, node) {\n  /** @type {Text} */\n  const text = {type: 'text', value: node.value.replace(/\\r?\\n|\\r/g, ' ')}\n  state.patch(node, text)\n\n  /** @type {Element} */\n  const result = {\n    type: 'element',\n    tagName: 'code',\n    properties: {},\n    children: [text]\n  }\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').ElementContent} ElementContent\n * @typedef {import('hast').Properties} Properties\n * @typedef {import('mdast').LinkReference} LinkReference\n * @typedef {import('../state.js').State} State\n */\n\nimport {normalizeUri} from 'micromark-util-sanitize-uri'\nimport {revert} from '../revert.js'\n\n/**\n * Turn an mdast `linkReference` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {LinkReference} node\n *   mdast node.\n * @returns {ElementContent | Array}\n *   hast node.\n */\nexport function linkReference(state, node) {\n  const def = state.definition(node.identifier)\n\n  if (!def) {\n    return revert(state, node)\n  }\n\n  /** @type {Properties} */\n  const properties = {href: normalizeUri(def.url || '')}\n\n  if (def.title !== null && def.title !== undefined) {\n    properties.title = def.title\n  }\n\n  /** @type {Element} */\n  const result = {\n    type: 'element',\n    tagName: 'a',\n    properties,\n    children: state.all(node)\n  }\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').Properties} Properties\n * @typedef {import('mdast').Link} Link\n * @typedef {import('../state.js').State} State\n */\n\nimport {normalizeUri} from 'micromark-util-sanitize-uri'\n\n/**\n * Turn an mdast `link` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {Link} node\n *   mdast node.\n * @returns {Element}\n *   hast node.\n */\nexport function link(state, node) {\n  /** @type {Properties} */\n  const properties = {href: normalizeUri(node.url)}\n\n  if (node.title !== null && node.title !== undefined) {\n    properties.title = node.title\n  }\n\n  /** @type {Element} */\n  const result = {\n    type: 'element',\n    tagName: 'a',\n    properties,\n    children: state.all(node)\n  }\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').Properties} Properties\n * @typedef {import('mdast').List} List\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `list` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {List} node\n *   mdast node.\n * @returns {Element}\n *   hast node.\n */\nexport function list(state, node) {\n  /** @type {Properties} */\n  const properties = {}\n  const results = state.all(node)\n  let index = -1\n\n  if (typeof node.start === 'number' && node.start !== 1) {\n    properties.start = node.start\n  }\n\n  // Like GitHub, add a class for custom styling.\n  while (++index < results.length) {\n    const child = results[index]\n\n    if (\n      child.type === 'element' &&\n      child.tagName === 'li' &&\n      child.properties &&\n      Array.isArray(child.properties.className) &&\n      child.properties.className.includes('task-list-item')\n    ) {\n      properties.className = ['contains-task-list']\n      break\n    }\n  }\n\n  /** @type {Element} */\n  const result = {\n    type: 'element',\n    tagName: node.ordered ? 'ol' : 'ul',\n    properties,\n    children: state.wrap(results, true)\n  }\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').Paragraph} Paragraph\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `paragraph` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {Paragraph} node\n *   mdast node.\n * @returns {Element}\n *   hast node.\n */\nexport function paragraph(state, node) {\n  /** @type {Element} */\n  const result = {\n    type: 'element',\n    tagName: 'p',\n    properties: {},\n    children: state.all(node)\n  }\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Root} HastRoot\n * @typedef {import('hast').Element} HastElement\n * @typedef {import('mdast').Root} MdastRoot\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `root` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {MdastRoot} node\n *   mdast node.\n * @returns {HastRoot | HastElement}\n *   hast node.\n */\nexport function root(state, node) {\n  /** @type {HastRoot} */\n  const result = {type: 'root', children: state.wrap(state.all(node))}\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').Strong} Strong\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `strong` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {Strong} node\n *   mdast node.\n * @returns {Element}\n *   hast node.\n */\nexport function strong(state, node) {\n  /** @type {Element} */\n  const result = {\n    type: 'element',\n    tagName: 'strong',\n    properties: {},\n    children: state.all(node)\n  }\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').Table} Table\n * @typedef {import('../state.js').State} State\n */\n\nimport {pointStart, pointEnd} from 'unist-util-position'\n\n/**\n * Turn an mdast `table` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {Table} node\n *   mdast node.\n * @returns {Element}\n *   hast node.\n */\nexport function table(state, node) {\n  const rows = state.all(node)\n  const firstRow = rows.shift()\n  /** @type {Array} */\n  const tableContent = []\n\n  if (firstRow) {\n    /** @type {Element} */\n    const head = {\n      type: 'element',\n      tagName: 'thead',\n      properties: {},\n      children: state.wrap([firstRow], true)\n    }\n    state.patch(node.children[0], head)\n    tableContent.push(head)\n  }\n\n  if (rows.length > 0) {\n    /** @type {Element} */\n    const body = {\n      type: 'element',\n      tagName: 'tbody',\n      properties: {},\n      children: state.wrap(rows, true)\n    }\n\n    const start = pointStart(node.children[1])\n    const end = pointEnd(node.children[node.children.length - 1])\n    if (start.line && end.line) body.position = {start, end}\n    tableContent.push(body)\n  }\n\n  /** @type {Element} */\n  const result = {\n    type: 'element',\n    tagName: 'table',\n    properties: {},\n    children: state.wrap(tableContent, true)\n  }\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').TableCell} TableCell\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `tableCell` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {TableCell} node\n *   mdast node.\n * @returns {Element}\n *   hast node.\n */\nexport function tableCell(state, node) {\n  // Note: this function is normally not called: see `table-row` for how rows\n  // and their cells are compiled.\n  /** @type {Element} */\n  const result = {\n    type: 'element',\n    tagName: 'td', // Assume body cell.\n    properties: {},\n    children: state.all(node)\n  }\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Properties} Properties\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').ElementContent} ElementContent\n * @typedef {import('mdast').Content} Content\n * @typedef {import('mdast').Parent} Parent\n * @typedef {import('mdast').Root} Root\n * @typedef {import('mdast').TableRow} TableRow\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * @typedef {Root | Content} Nodes\n * @typedef {Extract} Parents\n */\n\n/**\n * Turn an mdast `tableRow` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {TableRow} node\n *   mdast node.\n * @param {Parents | null | undefined} parent\n *   Parent of `node`.\n * @returns {Element}\n *   hast node.\n */\nexport function tableRow(state, node, parent) {\n  const siblings = parent ? parent.children : undefined\n  // Generate a body row when without parent.\n  const rowIndex = siblings ? siblings.indexOf(node) : 1\n  const tagName = rowIndex === 0 ? 'th' : 'td'\n  const align = parent && parent.type === 'table' ? parent.align : undefined\n  const length = align ? align.length : node.children.length\n  let cellIndex = -1\n  /** @type {Array} */\n  const cells = []\n\n  while (++cellIndex < length) {\n    // Note: can also be undefined.\n    const cell = node.children[cellIndex]\n    /** @type {Properties} */\n    const properties = {}\n    const alignValue = align ? align[cellIndex] : undefined\n\n    if (alignValue) {\n      properties.align = alignValue\n    }\n\n    /** @type {Element} */\n    let result = {type: 'element', tagName, properties, children: []}\n\n    if (cell) {\n      result.children = state.all(cell)\n      state.patch(cell, result)\n      result = state.applyData(node, result)\n    }\n\n    cells.push(result)\n  }\n\n  /** @type {Element} */\n  const result = {\n    type: 'element',\n    tagName: 'tr',\n    properties: {},\n    children: state.wrap(cells, true)\n  }\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} HastElement\n * @typedef {import('hast').Text} HastText\n * @typedef {import('mdast').Text} MdastText\n * @typedef {import('../state.js').State} State\n */\n\nimport {trimLines} from 'trim-lines'\n\n/**\n * Turn an mdast `text` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {MdastText} node\n *   mdast node.\n * @returns {HastText | HastElement}\n *   hast node.\n */\nexport function text(state, node) {\n  /** @type {HastText} */\n  const result = {type: 'text', value: trimLines(String(node.value))}\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').ThematicBreak} ThematicBreak\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `thematicBreak` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {ThematicBreak} node\n *   mdast node.\n * @returns {Element}\n *   hast node.\n */\nexport function thematicBreak(state, node) {\n  /** @type {Element} */\n  const result = {\n    type: 'element',\n    tagName: 'hr',\n    properties: {},\n    children: []\n  }\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Content} HastContent\n * @typedef {import('hast').Element} HastElement\n * @typedef {import('hast').ElementContent} HastElementContent\n * @typedef {import('hast').Properties} HastProperties\n * @typedef {import('hast').Root} HastRoot\n * @typedef {import('hast').Text} HastText\n *\n * @typedef {import('mdast').Content} MdastContent\n * @typedef {import('mdast').Definition} MdastDefinition\n * @typedef {import('mdast').FootnoteDefinition} MdastFootnoteDefinition\n * @typedef {import('mdast').Parent} MdastParent\n * @typedef {import('mdast').Root} MdastRoot\n */\n\n/**\n * @typedef {HastRoot | HastContent} HastNodes\n * @typedef {MdastRoot | MdastContent} MdastNodes\n * @typedef {Extract} MdastParents\n *\n * @typedef EmbeddedHastFields\n *   hast fields.\n * @property {string | null | undefined} [hName]\n *   Generate a specific element with this tag name instead.\n * @property {HastProperties | null | undefined} [hProperties]\n *   Generate an element with these properties instead.\n * @property {Array | null | undefined} [hChildren]\n *   Generate an element with this content instead.\n *\n * @typedef {Record & EmbeddedHastFields} MdastData\n *   mdast data with embedded hast fields.\n *\n * @typedef {MdastNodes & {data?: MdastData | null | undefined}} MdastNodeWithData\n *   mdast node with embedded hast data.\n *\n * @typedef PointLike\n *   Point-like value.\n * @property {number | null | undefined} [line]\n *   Line.\n * @property {number | null | undefined} [column]\n *   Column.\n * @property {number | null | undefined} [offset]\n *   Offset.\n *\n * @typedef PositionLike\n *   Position-like value.\n * @property {PointLike | null | undefined} [start]\n *   Point-like value.\n * @property {PointLike | null | undefined} [end]\n *   Point-like value.\n *\n * @callback Handler\n *   Handle a node.\n * @param {State} state\n *   Info passed around.\n * @param {any} node\n *   mdast node to handle.\n * @param {MdastParents | null | undefined} parent\n *   Parent of `node`.\n * @returns {HastElementContent | Array | null | undefined}\n *   hast node.\n *\n * @callback HFunctionProps\n *   Signature of `state` for when props are passed.\n * @param {MdastNodes | PositionLike | null | undefined} node\n *   mdast node or unist position.\n * @param {string} tagName\n *   HTML tag name.\n * @param {HastProperties} props\n *   Properties.\n * @param {Array | null | undefined} [children]\n *   hast content.\n * @returns {HastElement}\n *   Compiled element.\n *\n * @callback HFunctionNoProps\n *   Signature of `state` for when no props are passed.\n * @param {MdastNodes | PositionLike | null | undefined} node\n *   mdast node or unist position.\n * @param {string} tagName\n *   HTML tag name.\n * @param {Array | null | undefined} [children]\n *   hast content.\n * @returns {HastElement}\n *   Compiled element.\n *\n * @typedef HFields\n *   Info on `state`.\n * @property {boolean} dangerous\n *   Whether HTML is allowed.\n * @property {string} clobberPrefix\n *   Prefix to use to prevent DOM clobbering.\n * @property {string} footnoteLabel\n *   Label to use to introduce the footnote section.\n * @property {string} footnoteLabelTagName\n *   HTML used for the footnote label.\n * @property {HastProperties} footnoteLabelProperties\n *   Properties on the HTML tag used for the footnote label.\n * @property {string} footnoteBackLabel\n *   Label to use from backreferences back to their footnote call.\n * @property {(identifier: string) => MdastDefinition | null} definition\n *   Definition cache.\n * @property {Record} footnoteById\n *   Footnote definitions by their identifier.\n * @property {Array} footnoteOrder\n *   Identifiers of order when footnote calls first appear in tree order.\n * @property {Record} footnoteCounts\n *   Counts for how often the same footnote was called.\n * @property {Handlers} handlers\n *   Applied handlers.\n * @property {Handler} unknownHandler\n *   Handler for any none not in `passThrough` or otherwise handled.\n * @property {(from: MdastNodes, node: HastNodes) => void} patch\n *   Copy a node’s positional info.\n * @property {(from: MdastNodes, to: Type) => Type | HastElement} applyData\n *   Honor the `data` of `from`, and generate an element instead of `node`.\n * @property {(node: MdastNodes, parent: MdastParents | null | undefined) => HastElementContent | Array | null | undefined} one\n *   Transform an mdast node to hast.\n * @property {(node: MdastNodes) => Array} all\n *   Transform the children of an mdast parent to hast.\n * @property {(nodes: Array, loose?: boolean | null | undefined) => Array} wrap\n *   Wrap `nodes` with line endings between each node, adds initial/final line endings when `loose`.\n * @property {(left: MdastNodeWithData | PositionLike | null | undefined, right: HastElementContent) => HastElementContent} augment\n *   Like `state` but lower-level and usable on non-elements.\n *   Deprecated: use `patch` and `applyData`.\n * @property {Array} passThrough\n *   List of node types to pass through untouched (except for their children).\n *\n * @typedef Options\n *   Configuration (optional).\n * @property {boolean | null | undefined} [allowDangerousHtml=false]\n *   Whether to persist raw HTML in markdown in the hast tree.\n * @property {string | null | undefined} [clobberPrefix='user-content-']\n *   Prefix to use before the `id` attribute on footnotes to prevent it from\n *   *clobbering*.\n * @property {string | null | undefined} [footnoteBackLabel='Back to content']\n *   Label to use from backreferences back to their footnote call (affects\n *   screen readers).\n * @property {string | null | undefined} [footnoteLabel='Footnotes']\n *   Label to use for the footnotes section (affects screen readers).\n * @property {HastProperties | null | undefined} [footnoteLabelProperties={className: ['sr-only']}]\n *   Properties to use on the footnote label (note that `id: 'footnote-label'`\n *   is always added as footnote calls use it with `aria-describedby` to\n *   provide an accessible label).\n * @property {string | null | undefined} [footnoteLabelTagName='h2']\n *   Tag name to use for the footnote label.\n * @property {Handlers | null | undefined} [handlers]\n *   Extra handlers for nodes.\n * @property {Array | null | undefined} [passThrough]\n *   List of custom mdast node types to pass through (keep) in hast (note that\n *   the node itself is passed, but eventual children are transformed).\n * @property {Handler | null | undefined} [unknownHandler]\n *   Handler for all unknown nodes.\n *\n * @typedef {Record} Handlers\n *   Handle nodes.\n *\n * @typedef {HFunctionProps & HFunctionNoProps & HFields} State\n *   Info passed around.\n */\n\nimport {visit} from 'unist-util-visit'\nimport {position, pointStart, pointEnd} from 'unist-util-position'\nimport {generated} from 'unist-util-generated'\nimport {definitions} from 'mdast-util-definitions'\nimport {handlers} from './handlers/index.js'\n\nconst own = {}.hasOwnProperty\n\n/**\n * Create `state` from an mdast tree.\n *\n * @param {MdastNodes} tree\n *   mdast node to transform.\n * @param {Options | null | undefined} [options]\n *   Configuration.\n * @returns {State}\n *   `state` function.\n */\nexport function createState(tree, options) {\n  const settings = options || {}\n  const dangerous = settings.allowDangerousHtml || false\n  /** @type {Record} */\n  const footnoteById = {}\n\n  // To do: next major: add `options` to state, remove:\n  // `dangerous`, `clobberPrefix`, `footnoteLabel`, `footnoteLabelTagName`,\n  // `footnoteLabelProperties`, `footnoteBackLabel`, `passThrough`,\n  // `unknownHandler`.\n\n  // To do: next major: move to `state.options.allowDangerousHtml`.\n  state.dangerous = dangerous\n  // To do: next major: move to `state.options`.\n  state.clobberPrefix =\n    settings.clobberPrefix === undefined || settings.clobberPrefix === null\n      ? 'user-content-'\n      : settings.clobberPrefix\n  // To do: next major: move to `state.options`.\n  state.footnoteLabel = settings.footnoteLabel || 'Footnotes'\n  // To do: next major: move to `state.options`.\n  state.footnoteLabelTagName = settings.footnoteLabelTagName || 'h2'\n  // To do: next major: move to `state.options`.\n  state.footnoteLabelProperties = settings.footnoteLabelProperties || {\n    className: ['sr-only']\n  }\n  // To do: next major: move to `state.options`.\n  state.footnoteBackLabel = settings.footnoteBackLabel || 'Back to content'\n  // To do: next major: move to `state.options`.\n  state.unknownHandler = settings.unknownHandler\n  // To do: next major: move to `state.options`.\n  state.passThrough = settings.passThrough\n\n  state.handlers = {...handlers, ...settings.handlers}\n\n  // To do: next major: replace utility with `definitionById` object, so we\n  // only walk once (as we need footnotes too).\n  state.definition = definitions(tree)\n  state.footnoteById = footnoteById\n  /** @type {Array} */\n  state.footnoteOrder = []\n  /** @type {Record} */\n  state.footnoteCounts = {}\n\n  state.patch = patch\n  state.applyData = applyData\n  state.one = oneBound\n  state.all = allBound\n  state.wrap = wrap\n  // To do: next major: remove `augment`.\n  state.augment = augment\n\n  visit(tree, 'footnoteDefinition', (definition) => {\n    const id = String(definition.identifier).toUpperCase()\n\n    // Mimick CM behavior of link definitions.\n    // See: .\n    if (!own.call(footnoteById, id)) {\n      footnoteById[id] = definition\n    }\n  })\n\n  // @ts-expect-error Hush, it’s fine!\n  return state\n\n  /**\n   * Finalise the created `right`, a hast node, from `left`, an mdast node.\n   *\n   * @param {MdastNodeWithData | PositionLike | null | undefined} left\n   * @param {HastElementContent} right\n   * @returns {HastElementContent}\n   */\n  /* c8 ignore start */\n  // To do: next major: remove.\n  function augment(left, right) {\n    // Handle `data.hName`, `data.hProperties, `data.hChildren`.\n    if (left && 'data' in left && left.data) {\n      /** @type {MdastData} */\n      const data = left.data\n\n      if (data.hName) {\n        if (right.type !== 'element') {\n          right = {\n            type: 'element',\n            tagName: '',\n            properties: {},\n            children: []\n          }\n        }\n\n        right.tagName = data.hName\n      }\n\n      if (right.type === 'element' && data.hProperties) {\n        right.properties = {...right.properties, ...data.hProperties}\n      }\n\n      if ('children' in right && right.children && data.hChildren) {\n        right.children = data.hChildren\n      }\n    }\n\n    if (left) {\n      const ctx = 'type' in left ? left : {position: left}\n\n      if (!generated(ctx)) {\n        // @ts-expect-error: fine.\n        right.position = {start: pointStart(ctx), end: pointEnd(ctx)}\n      }\n    }\n\n    return right\n  }\n  /* c8 ignore stop */\n\n  /**\n   * Create an element for `node`.\n   *\n   * @type {HFunctionProps}\n   */\n  /* c8 ignore start */\n  // To do: next major: remove.\n  function state(node, tagName, props, children) {\n    if (Array.isArray(props)) {\n      children = props\n      props = {}\n    }\n\n    // @ts-expect-error augmenting an element yields an element.\n    return augment(node, {\n      type: 'element',\n      tagName,\n      properties: props || {},\n      children: children || []\n    })\n  }\n  /* c8 ignore stop */\n\n  /**\n   * Transform an mdast node into a hast node.\n   *\n   * @param {MdastNodes} node\n   *   mdast node.\n   * @param {MdastParents | null | undefined} [parent]\n   *   Parent of `node`.\n   * @returns {HastElementContent | Array | null | undefined}\n   *   Resulting hast node.\n   */\n  function oneBound(node, parent) {\n    // @ts-expect-error: that’s a state :)\n    return one(state, node, parent)\n  }\n\n  /**\n   * Transform the children of an mdast node into hast nodes.\n   *\n   * @param {MdastNodes} parent\n   *   mdast node to compile\n   * @returns {Array}\n   *   Resulting hast nodes.\n   */\n  function allBound(parent) {\n    // @ts-expect-error: that’s a state :)\n    return all(state, parent)\n  }\n}\n\n/**\n * Copy a node’s positional info.\n *\n * @param {MdastNodes} from\n *   mdast node to copy from.\n * @param {HastNodes} to\n *   hast node to copy into.\n * @returns {void}\n *   Nothing.\n */\nfunction patch(from, to) {\n  if (from.position) to.position = position(from)\n}\n\n/**\n * Honor the `data` of `from` and maybe generate an element instead of `to`.\n *\n * @template {HastNodes} Type\n *   Node type.\n * @param {MdastNodes} from\n *   mdast node to use data from.\n * @param {Type} to\n *   hast node to change.\n * @returns {Type | HastElement}\n *   Nothing.\n */\nfunction applyData(from, to) {\n  /** @type {Type | HastElement} */\n  let result = to\n\n  // Handle `data.hName`, `data.hProperties, `data.hChildren`.\n  if (from && from.data) {\n    const hName = from.data.hName\n    const hChildren = from.data.hChildren\n    const hProperties = from.data.hProperties\n\n    if (typeof hName === 'string') {\n      // Transforming the node resulted in an element with a different name\n      // than wanted:\n      if (result.type === 'element') {\n        result.tagName = hName\n      }\n      // Transforming the node resulted in a non-element, which happens for\n      // raw, text, and root nodes (unless custom handlers are passed).\n      // The intent is likely to keep the content around (otherwise: pass\n      // `hChildren`).\n      else {\n        result = {\n          type: 'element',\n          tagName: hName,\n          properties: {},\n          children: []\n        }\n\n        // To do: next major: take the children from the `root`, or inject the\n        // raw/text/comment or so into the element?\n        // if ('children' in node) {\n        //   // @ts-expect-error: assume `children` are allowed in elements.\n        //   result.children = node.children\n        // } else {\n        //   // @ts-expect-error: assume `node` is allowed in elements.\n        //   result.children.push(node)\n        // }\n      }\n    }\n\n    if (result.type === 'element' && hProperties) {\n      result.properties = {...result.properties, ...hProperties}\n    }\n\n    if (\n      'children' in result &&\n      result.children &&\n      hChildren !== null &&\n      hChildren !== undefined\n    ) {\n      // @ts-expect-error: assume valid children are defined.\n      result.children = hChildren\n    }\n  }\n\n  return result\n}\n\n/**\n * Transform an mdast node into a hast node.\n *\n * @param {State} state\n *   Info passed around.\n * @param {MdastNodes} node\n *   mdast node.\n * @param {MdastParents | null | undefined} [parent]\n *   Parent of `node`.\n * @returns {HastElementContent | Array | null | undefined}\n *   Resulting hast node.\n */\n// To do: next major: do not expose, keep bound.\nexport function one(state, node, parent) {\n  const type = node && node.type\n\n  // Fail on non-nodes.\n  if (!type) {\n    throw new Error('Expected node, got `' + node + '`')\n  }\n\n  if (own.call(state.handlers, type)) {\n    return state.handlers[type](state, node, parent)\n  }\n\n  if (state.passThrough && state.passThrough.includes(type)) {\n    // To do: next major: deep clone.\n    // @ts-expect-error: types of passed through nodes are expected to be added manually.\n    return 'children' in node ? {...node, children: all(state, node)} : node\n  }\n\n  if (state.unknownHandler) {\n    return state.unknownHandler(state, node, parent)\n  }\n\n  return defaultUnknownHandler(state, node)\n}\n\n/**\n * Transform the children of an mdast node into hast nodes.\n *\n * @param {State} state\n *   Info passed around.\n * @param {MdastNodes} parent\n *   mdast node to compile\n * @returns {Array}\n *   Resulting hast nodes.\n */\n// To do: next major: do not expose, keep bound.\nexport function all(state, parent) {\n  /** @type {Array} */\n  const values = []\n\n  if ('children' in parent) {\n    const nodes = parent.children\n    let index = -1\n    while (++index < nodes.length) {\n      const result = one(state, nodes[index], parent)\n\n      // To do: see if we van clean this? Can we merge texts?\n      if (result) {\n        if (index && nodes[index - 1].type === 'break') {\n          if (!Array.isArray(result) && result.type === 'text') {\n            result.value = result.value.replace(/^\\s+/, '')\n          }\n\n          if (!Array.isArray(result) && result.type === 'element') {\n            const head = result.children[0]\n\n            if (head && head.type === 'text') {\n              head.value = head.value.replace(/^\\s+/, '')\n            }\n          }\n        }\n\n        if (Array.isArray(result)) {\n          values.push(...result)\n        } else {\n          values.push(result)\n        }\n      }\n    }\n  }\n\n  return values\n}\n\n/**\n * Transform an unknown node.\n *\n * @param {State} state\n *   Info passed around.\n * @param {MdastNodes} node\n *   Unknown mdast node.\n * @returns {HastText | HastElement}\n *   Resulting hast node.\n */\nfunction defaultUnknownHandler(state, node) {\n  const data = node.data || {}\n  /** @type {HastText | HastElement} */\n  const result =\n    'value' in node &&\n    !(own.call(data, 'hProperties') || own.call(data, 'hChildren'))\n      ? {type: 'text', value: node.value}\n      : {\n          type: 'element',\n          tagName: 'div',\n          properties: {},\n          children: all(state, node)\n        }\n\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n\n/**\n * Wrap `nodes` with line endings between each node.\n *\n * @template {HastContent} Type\n *   Node type.\n * @param {Array} nodes\n *   List of nodes to wrap.\n * @param {boolean | null | undefined} [loose=false]\n *   Whether to add line endings at start and end.\n * @returns {Array}\n *   Wrapped nodes.\n */\nexport function wrap(nodes, loose) {\n  /** @type {Array} */\n  const result = []\n  let index = -1\n\n  if (loose) {\n    result.push({type: 'text', value: '\\n'})\n  }\n\n  while (++index < nodes.length) {\n    if (index) result.push({type: 'text', value: '\\n'})\n    result.push(nodes[index])\n  }\n\n  if (loose && nodes.length > 0) {\n    result.push({type: 'text', value: '\\n'})\n  }\n\n  return result\n}\n","/**\n * @typedef PointLike\n * @property {number | null | undefined} [line]\n * @property {number | null | undefined} [column]\n * @property {number | null | undefined} [offset]\n *\n * @typedef PositionLike\n * @property {PointLike | null | undefined} [start]\n * @property {PointLike | null | undefined} [end]\n *\n * @typedef NodeLike\n * @property {PositionLike | null | undefined} [position]\n */\n\n/**\n * Check if `node` is generated.\n *\n * @param {NodeLike | null | undefined} [node]\n *   Node to check.\n * @returns {boolean}\n *   Whether `node` is generated (does not have positional info).\n */\nexport function generated(node) {\n  return (\n    !node ||\n    !node.position ||\n    !node.position.start ||\n    !node.position.start.line ||\n    !node.position.start.column ||\n    !node.position.end ||\n    !node.position.end.line ||\n    !node.position.end.column\n  )\n}\n","/**\n * @typedef {import('hast').Content} HastContent\n * @typedef {import('hast').Root} HastRoot\n *\n * @typedef {import('mdast').Content} MdastContent\n * @typedef {import('mdast').Root} MdastRoot\n *\n * @typedef {import('./state.js').Options} Options\n */\n\n/**\n * @typedef {HastRoot | HastContent} HastNodes\n * @typedef {MdastRoot | MdastContent} MdastNodes\n */\n\nimport {footer} from './footer.js'\nimport {createState} from './state.js'\n\n/**\n * Transform mdast to hast.\n *\n * ##### Notes\n *\n * ###### HTML\n *\n * Raw HTML is available in mdast as `html` nodes and can be embedded in hast\n * as semistandard `raw` nodes.\n * Most utilities ignore `raw` nodes but two notable ones don’t:\n *\n * *   `hast-util-to-html` also has an option `allowDangerousHtml` which will\n *     output the raw HTML.\n *     This is typically discouraged as noted by the option name but is useful\n *     if you completely trust authors\n * *   `hast-util-raw` can handle the raw embedded HTML strings by parsing them\n *     into standard hast nodes (`element`, `text`, etc).\n *     This is a heavy task as it needs a full HTML parser, but it is the only\n *     way to support untrusted content\n *\n * ###### Footnotes\n *\n * Many options supported here relate to footnotes.\n * Footnotes are not specified by CommonMark, which we follow by default.\n * They are supported by GitHub, so footnotes can be enabled in markdown with\n * `mdast-util-gfm`.\n *\n * The options `footnoteBackLabel` and `footnoteLabel` define natural language\n * that explains footnotes, which is hidden for sighted users but shown to\n * assistive technology.\n * When your page is not in English, you must define translated values.\n *\n * Back references use ARIA attributes, but the section label itself uses a\n * heading that is hidden with an `sr-only` class.\n * To show it to sighted users, define different attributes in\n * `footnoteLabelProperties`.\n *\n * ###### Clobbering\n *\n * Footnotes introduces a problem, as it links footnote calls to footnote\n * definitions on the page through `id` attributes generated from user content,\n * which results in DOM clobbering.\n *\n * DOM clobbering is this:\n *\n * ```html\n * 

\n * \n * ```\n *\n * Elements by their ID are made available by browsers on the `window` object,\n * which is a security risk.\n * Using a prefix solves this problem.\n *\n * More information on how to handle clobbering and the prefix is explained in\n * Example: headings (DOM clobbering) in `rehype-sanitize`.\n *\n * ###### Unknown nodes\n *\n * Unknown nodes are nodes with a type that isn’t in `handlers` or `passThrough`.\n * The default behavior for unknown nodes is:\n *\n * * when the node has a `value` (and doesn’t have `data.hName`,\n * `data.hProperties`, or `data.hChildren`, see later), create a hast `text`\n * node\n * * otherwise, create a `
` element (which could be changed with\n * `data.hName`), with its children mapped from mdast to hast as well\n *\n * This behavior can be changed by passing an `unknownHandler`.\n *\n * @param {MdastNodes} tree\n * mdast tree.\n * @param {Options | null | undefined} [options]\n * Configuration.\n * @returns {HastNodes | null | undefined}\n * hast tree.\n */\n// To do: next major: always return a single `root`.\nexport function toHast(tree, options) {\n const state = createState(tree, options)\n const node = state.one(tree, null)\n const foot = footer(state)\n\n if (foot) {\n // @ts-expect-error If there’s a footer, there were definitions, meaning block\n // content.\n // So assume `node` is a parent node.\n node.children.push({type: 'text', value: '\\n'}, foot)\n }\n\n // To do: next major: always return root?\n return Array.isArray(node) ? {type: 'root', children: node} : node\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').ElementContent} ElementContent\n *\n * @typedef {import('./state.js').State} State\n */\n\nimport {normalizeUri} from 'micromark-util-sanitize-uri'\n\n/**\n * Generate a hast footer for called footnote definitions.\n *\n * @param {State} state\n * Info passed around.\n * @returns {Element | undefined}\n * `section` element or `undefined`.\n */\nexport function footer(state) {\n /** @type {Array} */\n const listItems = []\n let index = -1\n\n while (++index < state.footnoteOrder.length) {\n const def = state.footnoteById[state.footnoteOrder[index]]\n\n if (!def) {\n continue\n }\n\n const content = state.all(def)\n const id = String(def.identifier).toUpperCase()\n const safeId = normalizeUri(id.toLowerCase())\n let referenceIndex = 0\n /** @type {Array} */\n const backReferences = []\n\n while (++referenceIndex <= state.footnoteCounts[id]) {\n /** @type {Element} */\n const backReference = {\n type: 'element',\n tagName: 'a',\n properties: {\n href:\n '#' +\n state.clobberPrefix +\n 'fnref-' +\n safeId +\n (referenceIndex > 1 ? '-' + referenceIndex : ''),\n dataFootnoteBackref: true,\n className: ['data-footnote-backref'],\n ariaLabel: state.footnoteBackLabel\n },\n children: [{type: 'text', value: '↩'}]\n }\n\n if (referenceIndex > 1) {\n backReference.children.push({\n type: 'element',\n tagName: 'sup',\n children: [{type: 'text', value: String(referenceIndex)}]\n })\n }\n\n if (backReferences.length > 0) {\n backReferences.push({type: 'text', value: ' '})\n }\n\n backReferences.push(backReference)\n }\n\n const tail = content[content.length - 1]\n\n if (tail && tail.type === 'element' && tail.tagName === 'p') {\n const tailTail = tail.children[tail.children.length - 1]\n if (tailTail && tailTail.type === 'text') {\n tailTail.value += ' '\n } else {\n tail.children.push({type: 'text', value: ' '})\n }\n\n tail.children.push(...backReferences)\n } else {\n content.push(...backReferences)\n }\n\n /** @type {Element} */\n const listItem = {\n type: 'element',\n tagName: 'li',\n properties: {id: state.clobberPrefix + 'fn-' + safeId},\n children: state.wrap(content, true)\n }\n\n state.patch(def, listItem)\n\n listItems.push(listItem)\n }\n\n if (listItems.length === 0) {\n return\n }\n\n return {\n type: 'element',\n tagName: 'section',\n properties: {dataFootnotes: true, className: ['footnotes']},\n children: [\n {\n type: 'element',\n tagName: state.footnoteLabelTagName,\n properties: {\n // To do: use structured clone.\n ...JSON.parse(JSON.stringify(state.footnoteLabelProperties)),\n id: 'footnote-label'\n },\n children: [{type: 'text', value: state.footnoteLabel}]\n },\n {type: 'text', value: '\\n'},\n {\n type: 'element',\n tagName: 'ol',\n properties: {},\n children: state.wrap(listItems, true)\n },\n {type: 'text', value: '\\n'}\n ]\n }\n}\n","/**\n * @typedef {import('hast').Root} HastRoot\n * @typedef {import('mdast').Root} MdastRoot\n * @typedef {import('mdast-util-to-hast').Options} Options\n * @typedef {import('unified').Processor} Processor\n *\n * @typedef {import('mdast-util-to-hast')} DoNotTouchAsThisImportIncludesRawInTree\n */\n\nimport {toHast} from 'mdast-util-to-hast'\n\n// Note: the `` overload doesn’t seem to work :'(\n\n/**\n * Plugin that turns markdown into HTML to support rehype.\n *\n * * If a destination processor is given, that processor runs with a new HTML\n * (hast) tree (bridge-mode).\n * As the given processor runs with a hast tree, and rehype plugins support\n * hast, that means rehype plugins can be used with the given processor.\n * The hast tree is discarded in the end.\n * It’s highly unlikely that you want to do this.\n * * The common case is to not pass a destination processor, in which case the\n * current processor continues running with a new HTML (hast) tree\n * (mutate-mode).\n * As the current processor continues with a hast tree, and rehype plugins\n * support hast, that means rehype plugins can be used after\n * `remark-rehype`.\n * It’s likely that this is what you want to do.\n *\n * @param destination\n * Optional unified processor.\n * @param options\n * Options passed to `mdast-util-to-hast`.\n */\nconst remarkRehype =\n /** @type {(import('unified').Plugin<[Processor, Options?]|[null|undefined, Options?]|[Options]|[], MdastRoot>)} */\n (\n function (destination, options) {\n return destination && 'run' in destination\n ? bridge(destination, options)\n : mutate(destination || options)\n }\n )\n\nexport default remarkRehype\n\n/**\n * Bridge-mode.\n * Runs the destination with the new hast tree.\n *\n * @type {import('unified').Plugin<[Processor, Options?], MdastRoot>}\n */\nfunction bridge(destination, options) {\n return (node, file, next) => {\n destination.run(toHast(node, options), file, (error) => {\n next(error)\n })\n }\n}\n\n/**\n * Mutate-mode.\n * Further plugins run on the hast tree.\n *\n * @type {import('unified').Plugin<[Options?]|void[], MdastRoot, HastRoot>}\n */\nfunction mutate(options) {\n // @ts-expect-error: assume a corresponding node is returned by `toHast`.\n return (node) => toHast(node, options)\n}\n","/**\n * @typedef {import('./info.js').Info} Info\n * @typedef {Record} Properties\n * @typedef {Record} Normal\n */\n\nexport class Schema {\n /**\n * @constructor\n * @param {Properties} property\n * @param {Normal} normal\n * @param {string} [space]\n */\n constructor(property, normal, space) {\n this.property = property\n this.normal = normal\n if (space) {\n this.space = space\n }\n }\n}\n\n/** @type {Properties} */\nSchema.prototype.property = {}\n/** @type {Normal} */\nSchema.prototype.normal = {}\n/** @type {string|null} */\nSchema.prototype.space = null\n","/**\n * @typedef {import('./schema.js').Properties} Properties\n * @typedef {import('./schema.js').Normal} Normal\n */\n\nimport {Schema} from './schema.js'\n\n/**\n * @param {Schema[]} definitions\n * @param {string} [space]\n * @returns {Schema}\n */\nexport function merge(definitions, space) {\n /** @type {Properties} */\n const property = {}\n /** @type {Normal} */\n const normal = {}\n let index = -1\n\n while (++index < definitions.length) {\n Object.assign(property, definitions[index].property)\n Object.assign(normal, definitions[index].normal)\n }\n\n return new Schema(property, normal, space)\n}\n","/**\n * @param {string} value\n * @returns {string}\n */\nexport function normalize(value) {\n return value.toLowerCase()\n}\n","export class Info {\n /**\n * @constructor\n * @param {string} property\n * @param {string} attribute\n */\n constructor(property, attribute) {\n /** @type {string} */\n this.property = property\n /** @type {string} */\n this.attribute = attribute\n }\n}\n\n/** @type {string|null} */\nInfo.prototype.space = null\nInfo.prototype.boolean = false\nInfo.prototype.booleanish = false\nInfo.prototype.overloadedBoolean = false\nInfo.prototype.number = false\nInfo.prototype.commaSeparated = false\nInfo.prototype.spaceSeparated = false\nInfo.prototype.commaOrSpaceSeparated = false\nInfo.prototype.mustUseProperty = false\nInfo.prototype.defined = false\n","let powers = 0\n\nexport const boolean = increment()\nexport const booleanish = increment()\nexport const overloadedBoolean = increment()\nexport const number = increment()\nexport const spaceSeparated = increment()\nexport const commaSeparated = increment()\nexport const commaOrSpaceSeparated = increment()\n\nfunction increment() {\n return 2 ** ++powers\n}\n","import {Info} from './info.js'\nimport * as types from './types.js'\n\n/** @type {Array} */\n// @ts-expect-error: hush.\nconst checks = Object.keys(types)\n\nexport class DefinedInfo extends Info {\n /**\n * @constructor\n * @param {string} property\n * @param {string} attribute\n * @param {number|null} [mask]\n * @param {string} [space]\n */\n constructor(property, attribute, mask, space) {\n let index = -1\n\n super(property, attribute)\n\n mark(this, 'space', space)\n\n if (typeof mask === 'number') {\n while (++index < checks.length) {\n const check = checks[index]\n mark(this, checks[index], (mask & types[check]) === types[check])\n }\n }\n }\n}\n\nDefinedInfo.prototype.defined = true\n\n/**\n * @param {DefinedInfo} values\n * @param {string} key\n * @param {unknown} value\n */\nfunction mark(values, key, value) {\n if (value) {\n // @ts-expect-error: assume `value` matches the expected value of `key`.\n values[key] = value\n }\n}\n","/**\n * @typedef {import('./schema.js').Properties} Properties\n * @typedef {import('./schema.js').Normal} Normal\n *\n * @typedef {Record} Attributes\n *\n * @typedef {Object} Definition\n * @property {Record} properties\n * @property {(attributes: Attributes, property: string) => string} transform\n * @property {string} [space]\n * @property {Attributes} [attributes]\n * @property {Array} [mustUseProperty]\n */\n\nimport {normalize} from '../normalize.js'\nimport {Schema} from './schema.js'\nimport {DefinedInfo} from './defined-info.js'\n\nconst own = {}.hasOwnProperty\n\n/**\n * @param {Definition} definition\n * @returns {Schema}\n */\nexport function create(definition) {\n /** @type {Properties} */\n const property = {}\n /** @type {Normal} */\n const normal = {}\n /** @type {string} */\n let prop\n\n for (prop in definition.properties) {\n if (own.call(definition.properties, prop)) {\n const value = definition.properties[prop]\n const info = new DefinedInfo(\n prop,\n definition.transform(definition.attributes || {}, prop),\n value,\n definition.space\n )\n\n if (\n definition.mustUseProperty &&\n definition.mustUseProperty.includes(prop)\n ) {\n info.mustUseProperty = true\n }\n\n property[prop] = info\n\n normal[normalize(prop)] = prop\n normal[normalize(info.attribute)] = prop\n }\n }\n\n return new Schema(property, normal, definition.space)\n}\n","import {create} from './util/create.js'\n\nexport const xlink = create({\n space: 'xlink',\n transform(_, prop) {\n return 'xlink:' + prop.slice(5).toLowerCase()\n },\n properties: {\n xLinkActuate: null,\n xLinkArcRole: null,\n xLinkHref: null,\n xLinkRole: null,\n xLinkShow: null,\n xLinkTitle: null,\n xLinkType: null\n }\n})\n","import {create} from './util/create.js'\n\nexport const xml = create({\n space: 'xml',\n transform(_, prop) {\n return 'xml:' + prop.slice(3).toLowerCase()\n },\n properties: {xmlLang: null, xmlBase: null, xmlSpace: null}\n})\n","/**\n * @param {Record} attributes\n * @param {string} attribute\n * @returns {string}\n */\nexport function caseSensitiveTransform(attributes, attribute) {\n return attribute in attributes ? attributes[attribute] : attribute\n}\n","import {caseSensitiveTransform} from './case-sensitive-transform.js'\n\n/**\n * @param {Record} attributes\n * @param {string} property\n * @returns {string}\n */\nexport function caseInsensitiveTransform(attributes, property) {\n return caseSensitiveTransform(attributes, property.toLowerCase())\n}\n","import {create} from './util/create.js'\nimport {caseInsensitiveTransform} from './util/case-insensitive-transform.js'\n\nexport const xmlns = create({\n space: 'xmlns',\n attributes: {xmlnsxlink: 'xmlns:xlink'},\n transform: caseInsensitiveTransform,\n properties: {xmlns: null, xmlnsXLink: null}\n})\n","import {booleanish, number, spaceSeparated} from './util/types.js'\nimport {create} from './util/create.js'\n\nexport const aria = create({\n transform(_, prop) {\n return prop === 'role' ? prop : 'aria-' + prop.slice(4).toLowerCase()\n },\n properties: {\n ariaActiveDescendant: null,\n ariaAtomic: booleanish,\n ariaAutoComplete: null,\n ariaBusy: booleanish,\n ariaChecked: booleanish,\n ariaColCount: number,\n ariaColIndex: number,\n ariaColSpan: number,\n ariaControls: spaceSeparated,\n ariaCurrent: null,\n ariaDescribedBy: spaceSeparated,\n ariaDetails: null,\n ariaDisabled: booleanish,\n ariaDropEffect: spaceSeparated,\n ariaErrorMessage: null,\n ariaExpanded: booleanish,\n ariaFlowTo: spaceSeparated,\n ariaGrabbed: booleanish,\n ariaHasPopup: null,\n ariaHidden: booleanish,\n ariaInvalid: null,\n ariaKeyShortcuts: null,\n ariaLabel: null,\n ariaLabelledBy: spaceSeparated,\n ariaLevel: number,\n ariaLive: null,\n ariaModal: booleanish,\n ariaMultiLine: booleanish,\n ariaMultiSelectable: booleanish,\n ariaOrientation: null,\n ariaOwns: spaceSeparated,\n ariaPlaceholder: null,\n ariaPosInSet: number,\n ariaPressed: booleanish,\n ariaReadOnly: booleanish,\n ariaRelevant: null,\n ariaRequired: booleanish,\n ariaRoleDescription: spaceSeparated,\n ariaRowCount: number,\n ariaRowIndex: number,\n ariaRowSpan: number,\n ariaSelected: booleanish,\n ariaSetSize: number,\n ariaSort: null,\n ariaValueMax: number,\n ariaValueMin: number,\n ariaValueNow: number,\n ariaValueText: null,\n role: null\n }\n})\n","import {\n boolean,\n overloadedBoolean,\n booleanish,\n number,\n spaceSeparated,\n commaSeparated\n} from './util/types.js'\nimport {create} from './util/create.js'\nimport {caseInsensitiveTransform} from './util/case-insensitive-transform.js'\n\nexport const html = create({\n space: 'html',\n attributes: {\n acceptcharset: 'accept-charset',\n classname: 'class',\n htmlfor: 'for',\n httpequiv: 'http-equiv'\n },\n transform: caseInsensitiveTransform,\n mustUseProperty: ['checked', 'multiple', 'muted', 'selected'],\n properties: {\n // Standard Properties.\n abbr: null,\n accept: commaSeparated,\n acceptCharset: spaceSeparated,\n accessKey: spaceSeparated,\n action: null,\n allow: null,\n allowFullScreen: boolean,\n allowPaymentRequest: boolean,\n allowUserMedia: boolean,\n alt: null,\n as: null,\n async: boolean,\n autoCapitalize: null,\n autoComplete: spaceSeparated,\n autoFocus: boolean,\n autoPlay: boolean,\n blocking: spaceSeparated,\n capture: null,\n charSet: null,\n checked: boolean,\n cite: null,\n className: spaceSeparated,\n cols: number,\n colSpan: null,\n content: null,\n contentEditable: booleanish,\n controls: boolean,\n controlsList: spaceSeparated,\n coords: number | commaSeparated,\n crossOrigin: null,\n data: null,\n dateTime: null,\n decoding: null,\n default: boolean,\n defer: boolean,\n dir: null,\n dirName: null,\n disabled: boolean,\n download: overloadedBoolean,\n draggable: booleanish,\n encType: null,\n enterKeyHint: null,\n fetchPriority: null,\n form: null,\n formAction: null,\n formEncType: null,\n formMethod: null,\n formNoValidate: boolean,\n formTarget: null,\n headers: spaceSeparated,\n height: number,\n hidden: boolean,\n high: number,\n href: null,\n hrefLang: null,\n htmlFor: spaceSeparated,\n httpEquiv: spaceSeparated,\n id: null,\n imageSizes: null,\n imageSrcSet: null,\n inert: boolean,\n inputMode: null,\n integrity: null,\n is: null,\n isMap: boolean,\n itemId: null,\n itemProp: spaceSeparated,\n itemRef: spaceSeparated,\n itemScope: boolean,\n itemType: spaceSeparated,\n kind: null,\n label: null,\n lang: null,\n language: null,\n list: null,\n loading: null,\n loop: boolean,\n low: number,\n manifest: null,\n max: null,\n maxLength: number,\n media: null,\n method: null,\n min: null,\n minLength: number,\n multiple: boolean,\n muted: boolean,\n name: null,\n nonce: null,\n noModule: boolean,\n noValidate: boolean,\n onAbort: null,\n onAfterPrint: null,\n onAuxClick: null,\n onBeforeMatch: null,\n onBeforePrint: null,\n onBeforeToggle: null,\n onBeforeUnload: null,\n onBlur: null,\n onCancel: null,\n onCanPlay: null,\n onCanPlayThrough: null,\n onChange: null,\n onClick: null,\n onClose: null,\n onContextLost: null,\n onContextMenu: null,\n onContextRestored: null,\n onCopy: null,\n onCueChange: null,\n onCut: null,\n onDblClick: null,\n onDrag: null,\n onDragEnd: null,\n onDragEnter: null,\n onDragExit: null,\n onDragLeave: null,\n onDragOver: null,\n onDragStart: null,\n onDrop: null,\n onDurationChange: null,\n onEmptied: null,\n onEnded: null,\n onError: null,\n onFocus: null,\n onFormData: null,\n onHashChange: null,\n onInput: null,\n onInvalid: null,\n onKeyDown: null,\n onKeyPress: null,\n onKeyUp: null,\n onLanguageChange: null,\n onLoad: null,\n onLoadedData: null,\n onLoadedMetadata: null,\n onLoadEnd: null,\n onLoadStart: null,\n onMessage: null,\n onMessageError: null,\n onMouseDown: null,\n onMouseEnter: null,\n onMouseLeave: null,\n onMouseMove: null,\n onMouseOut: null,\n onMouseOver: null,\n onMouseUp: null,\n onOffline: null,\n onOnline: null,\n onPageHide: null,\n onPageShow: null,\n onPaste: null,\n onPause: null,\n onPlay: null,\n onPlaying: null,\n onPopState: null,\n onProgress: null,\n onRateChange: null,\n onRejectionHandled: null,\n onReset: null,\n onResize: null,\n onScroll: null,\n onScrollEnd: null,\n onSecurityPolicyViolation: null,\n onSeeked: null,\n onSeeking: null,\n onSelect: null,\n onSlotChange: null,\n onStalled: null,\n onStorage: null,\n onSubmit: null,\n onSuspend: null,\n onTimeUpdate: null,\n onToggle: null,\n onUnhandledRejection: null,\n onUnload: null,\n onVolumeChange: null,\n onWaiting: null,\n onWheel: null,\n open: boolean,\n optimum: number,\n pattern: null,\n ping: spaceSeparated,\n placeholder: null,\n playsInline: boolean,\n popover: null,\n popoverTarget: null,\n popoverTargetAction: null,\n poster: null,\n preload: null,\n readOnly: boolean,\n referrerPolicy: null,\n rel: spaceSeparated,\n required: boolean,\n reversed: boolean,\n rows: number,\n rowSpan: number,\n sandbox: spaceSeparated,\n scope: null,\n scoped: boolean,\n seamless: boolean,\n selected: boolean,\n shadowRootClonable: boolean,\n shadowRootDelegatesFocus: boolean,\n shadowRootMode: null,\n shape: null,\n size: number,\n sizes: null,\n slot: null,\n span: number,\n spellCheck: booleanish,\n src: null,\n srcDoc: null,\n srcLang: null,\n srcSet: null,\n start: number,\n step: null,\n style: null,\n tabIndex: number,\n target: null,\n title: null,\n translate: null,\n type: null,\n typeMustMatch: boolean,\n useMap: null,\n value: booleanish,\n width: number,\n wrap: null,\n writingSuggestions: null,\n\n // Legacy.\n // See: https://html.spec.whatwg.org/#other-elements,-attributes-and-apis\n align: null, // Several. Use CSS `text-align` instead,\n aLink: null, // ``. Use CSS `a:active {color}` instead\n archive: spaceSeparated, // ``. List of URIs to archives\n axis: null, // `` and ``. Use `scope` on ``\n background: null, // ``. Use CSS `background-image` instead\n bgColor: null, // `` and table elements. Use CSS `background-color` instead\n border: number, // ``. Use CSS `border-width` instead,\n borderColor: null, // `
`. Use CSS `border-color` instead,\n bottomMargin: number, // ``\n cellPadding: null, // `
`\n cellSpacing: null, // `
`\n char: null, // Several table elements. When `align=char`, sets the character to align on\n charOff: null, // Several table elements. When `char`, offsets the alignment\n classId: null, // ``\n clear: null, // `
`. Use CSS `clear` instead\n code: null, // ``\n codeBase: null, // ``\n codeType: null, // ``\n color: null, // `` and `
`. Use CSS instead\n compact: boolean, // Lists. Use CSS to reduce space between items instead\n declare: boolean, // ``\n event: null, // `\n * ^\n * ```\n *\n * @type {State}\n */\n function continuationRawTagOpen(code) {\n if (code === 47) {\n effects.consume(code)\n buffer = ''\n return continuationRawEndTag\n }\n return continuation(code)\n }\n\n /**\n * In raw continuation, after ` | \n * ^^^^^^\n * ```\n *\n * @type {State}\n */\n function continuationRawEndTag(code) {\n if (code === 62) {\n const name = buffer.toLowerCase()\n if (htmlRawNames.includes(name)) {\n effects.consume(code)\n return continuationClose\n }\n return continuation(code)\n }\n if (asciiAlpha(code) && buffer.length < 8) {\n effects.consume(code)\n // @ts-expect-error: not null.\n buffer += String.fromCharCode(code)\n return continuationRawEndTag\n }\n return continuation(code)\n }\n\n /**\n * In cdata continuation, after `]`, expecting `]>`.\n *\n * ```markdown\n * > | &<]]>\n * ^\n * ```\n *\n * @type {State}\n */\n function continuationCdataInside(code) {\n if (code === 93) {\n effects.consume(code)\n return continuationDeclarationInside\n }\n return continuation(code)\n }\n\n /**\n * In declaration or instruction continuation, at `>`.\n *\n * ```markdown\n * > | \n * ^\n * > | \n * ^\n * > | \n * ^\n * > | \n * ^\n * > | &<]]>\n * ^\n * ```\n *\n * @type {State}\n */\n function continuationDeclarationInside(code) {\n if (code === 62) {\n effects.consume(code)\n return continuationClose\n }\n\n // More dashes.\n if (code === 45 && marker === 2) {\n effects.consume(code)\n return continuationDeclarationInside\n }\n return continuation(code)\n }\n\n /**\n * In closed continuation: everything we get until the eol/eof is part of it.\n *\n * ```markdown\n * > | \n * ^\n * ```\n *\n * @type {State}\n */\n function continuationClose(code) {\n if (code === null || markdownLineEnding(code)) {\n effects.exit('htmlFlowData')\n return continuationAfter(code)\n }\n effects.consume(code)\n return continuationClose\n }\n\n /**\n * Done.\n *\n * ```markdown\n * > | \n * ^\n * ```\n *\n * @type {State}\n */\n function continuationAfter(code) {\n effects.exit('htmlFlow')\n // // Feel free to interrupt.\n // tokenizer.interrupt = false\n // // No longer concrete.\n // tokenizer.concrete = false\n return ok(code)\n }\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeNonLazyContinuationStart(effects, ok, nok) {\n const self = this\n return start\n\n /**\n * At eol, before continuation.\n *\n * ```markdown\n * > | * ```js\n * ^\n * | b\n * ```\n *\n * @type {State}\n */\n function start(code) {\n if (markdownLineEnding(code)) {\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return after\n }\n return nok(code)\n }\n\n /**\n * A continuation.\n *\n * ```markdown\n * | * ```js\n * > | b\n * ^\n * ```\n *\n * @type {State}\n */\n function after(code) {\n return self.parser.lazy[self.now().line] ? nok(code) : ok(code)\n }\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeBlankLineBefore(effects, ok, nok) {\n return start\n\n /**\n * Before eol, expecting blank line.\n *\n * ```markdown\n * > |
\n * ^\n * |\n * ```\n *\n * @type {State}\n */\n function start(code) {\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return effects.attempt(blankLine, ok, nok)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Code} Code\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {factorySpace} from 'micromark-factory-space'\nimport {markdownLineEnding, markdownSpace} from 'micromark-util-character'\n/** @type {Construct} */\nconst nonLazyContinuation = {\n tokenize: tokenizeNonLazyContinuation,\n partial: true\n}\n\n/** @type {Construct} */\nexport const codeFenced = {\n name: 'codeFenced',\n tokenize: tokenizeCodeFenced,\n concrete: true\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeCodeFenced(effects, ok, nok) {\n const self = this\n /** @type {Construct} */\n const closeStart = {\n tokenize: tokenizeCloseStart,\n partial: true\n }\n let initialPrefix = 0\n let sizeOpen = 0\n /** @type {NonNullable} */\n let marker\n return start\n\n /**\n * Start of code.\n *\n * ```markdown\n * > | ~~~js\n * ^\n * | alert(1)\n * | ~~~\n * ```\n *\n * @type {State}\n */\n function start(code) {\n // To do: parse whitespace like `markdown-rs`.\n return beforeSequenceOpen(code)\n }\n\n /**\n * In opening fence, after prefix, at sequence.\n *\n * ```markdown\n * > | ~~~js\n * ^\n * | alert(1)\n * | ~~~\n * ```\n *\n * @type {State}\n */\n function beforeSequenceOpen(code) {\n const tail = self.events[self.events.length - 1]\n initialPrefix =\n tail && tail[1].type === 'linePrefix'\n ? tail[2].sliceSerialize(tail[1], true).length\n : 0\n marker = code\n effects.enter('codeFenced')\n effects.enter('codeFencedFence')\n effects.enter('codeFencedFenceSequence')\n return sequenceOpen(code)\n }\n\n /**\n * In opening fence sequence.\n *\n * ```markdown\n * > | ~~~js\n * ^\n * | alert(1)\n * | ~~~\n * ```\n *\n * @type {State}\n */\n function sequenceOpen(code) {\n if (code === marker) {\n sizeOpen++\n effects.consume(code)\n return sequenceOpen\n }\n if (sizeOpen < 3) {\n return nok(code)\n }\n effects.exit('codeFencedFenceSequence')\n return markdownSpace(code)\n ? factorySpace(effects, infoBefore, 'whitespace')(code)\n : infoBefore(code)\n }\n\n /**\n * In opening fence, after the sequence (and optional whitespace), before info.\n *\n * ```markdown\n * > | ~~~js\n * ^\n * | alert(1)\n * | ~~~\n * ```\n *\n * @type {State}\n */\n function infoBefore(code) {\n if (code === null || markdownLineEnding(code)) {\n effects.exit('codeFencedFence')\n return self.interrupt\n ? ok(code)\n : effects.check(nonLazyContinuation, atNonLazyBreak, after)(code)\n }\n effects.enter('codeFencedFenceInfo')\n effects.enter('chunkString', {\n contentType: 'string'\n })\n return info(code)\n }\n\n /**\n * In info.\n *\n * ```markdown\n * > | ~~~js\n * ^\n * | alert(1)\n * | ~~~\n * ```\n *\n * @type {State}\n */\n function info(code) {\n if (code === null || markdownLineEnding(code)) {\n effects.exit('chunkString')\n effects.exit('codeFencedFenceInfo')\n return infoBefore(code)\n }\n if (markdownSpace(code)) {\n effects.exit('chunkString')\n effects.exit('codeFencedFenceInfo')\n return factorySpace(effects, metaBefore, 'whitespace')(code)\n }\n if (code === 96 && code === marker) {\n return nok(code)\n }\n effects.consume(code)\n return info\n }\n\n /**\n * In opening fence, after info and whitespace, before meta.\n *\n * ```markdown\n * > | ~~~js eval\n * ^\n * | alert(1)\n * | ~~~\n * ```\n *\n * @type {State}\n */\n function metaBefore(code) {\n if (code === null || markdownLineEnding(code)) {\n return infoBefore(code)\n }\n effects.enter('codeFencedFenceMeta')\n effects.enter('chunkString', {\n contentType: 'string'\n })\n return meta(code)\n }\n\n /**\n * In meta.\n *\n * ```markdown\n * > | ~~~js eval\n * ^\n * | alert(1)\n * | ~~~\n * ```\n *\n * @type {State}\n */\n function meta(code) {\n if (code === null || markdownLineEnding(code)) {\n effects.exit('chunkString')\n effects.exit('codeFencedFenceMeta')\n return infoBefore(code)\n }\n if (code === 96 && code === marker) {\n return nok(code)\n }\n effects.consume(code)\n return meta\n }\n\n /**\n * At eol/eof in code, before a non-lazy closing fence or content.\n *\n * ```markdown\n * > | ~~~js\n * ^\n * > | alert(1)\n * ^\n * | ~~~\n * ```\n *\n * @type {State}\n */\n function atNonLazyBreak(code) {\n return effects.attempt(closeStart, after, contentBefore)(code)\n }\n\n /**\n * Before code content, not a closing fence, at eol.\n *\n * ```markdown\n * | ~~~js\n * > | alert(1)\n * ^\n * | ~~~\n * ```\n *\n * @type {State}\n */\n function contentBefore(code) {\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return contentStart\n }\n\n /**\n * Before code content, not a closing fence.\n *\n * ```markdown\n * | ~~~js\n * > | alert(1)\n * ^\n * | ~~~\n * ```\n *\n * @type {State}\n */\n function contentStart(code) {\n return initialPrefix > 0 && markdownSpace(code)\n ? factorySpace(\n effects,\n beforeContentChunk,\n 'linePrefix',\n initialPrefix + 1\n )(code)\n : beforeContentChunk(code)\n }\n\n /**\n * Before code content, after optional prefix.\n *\n * ```markdown\n * | ~~~js\n * > | alert(1)\n * ^\n * | ~~~\n * ```\n *\n * @type {State}\n */\n function beforeContentChunk(code) {\n if (code === null || markdownLineEnding(code)) {\n return effects.check(nonLazyContinuation, atNonLazyBreak, after)(code)\n }\n effects.enter('codeFlowValue')\n return contentChunk(code)\n }\n\n /**\n * In code content.\n *\n * ```markdown\n * | ~~~js\n * > | alert(1)\n * ^^^^^^^^\n * | ~~~\n * ```\n *\n * @type {State}\n */\n function contentChunk(code) {\n if (code === null || markdownLineEnding(code)) {\n effects.exit('codeFlowValue')\n return beforeContentChunk(code)\n }\n effects.consume(code)\n return contentChunk\n }\n\n /**\n * After code.\n *\n * ```markdown\n * | ~~~js\n * | alert(1)\n * > | ~~~\n * ^\n * ```\n *\n * @type {State}\n */\n function after(code) {\n effects.exit('codeFenced')\n return ok(code)\n }\n\n /**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\n function tokenizeCloseStart(effects, ok, nok) {\n let size = 0\n return startBefore\n\n /**\n *\n *\n * @type {State}\n */\n function startBefore(code) {\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return start\n }\n\n /**\n * Before closing fence, at optional whitespace.\n *\n * ```markdown\n * | ~~~js\n * | alert(1)\n * > | ~~~\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n // Always populated by defaults.\n\n // To do: `enter` here or in next state?\n effects.enter('codeFencedFence')\n return markdownSpace(code)\n ? factorySpace(\n effects,\n beforeSequenceClose,\n 'linePrefix',\n self.parser.constructs.disable.null.includes('codeIndented')\n ? undefined\n : 4\n )(code)\n : beforeSequenceClose(code)\n }\n\n /**\n * In closing fence, after optional whitespace, at sequence.\n *\n * ```markdown\n * | ~~~js\n * | alert(1)\n * > | ~~~\n * ^\n * ```\n *\n * @type {State}\n */\n function beforeSequenceClose(code) {\n if (code === marker) {\n effects.enter('codeFencedFenceSequence')\n return sequenceClose(code)\n }\n return nok(code)\n }\n\n /**\n * In closing fence sequence.\n *\n * ```markdown\n * | ~~~js\n * | alert(1)\n * > | ~~~\n * ^\n * ```\n *\n * @type {State}\n */\n function sequenceClose(code) {\n if (code === marker) {\n size++\n effects.consume(code)\n return sequenceClose\n }\n if (size >= sizeOpen) {\n effects.exit('codeFencedFenceSequence')\n return markdownSpace(code)\n ? factorySpace(effects, sequenceCloseAfter, 'whitespace')(code)\n : sequenceCloseAfter(code)\n }\n return nok(code)\n }\n\n /**\n * After closing fence sequence, after optional whitespace.\n *\n * ```markdown\n * | ~~~js\n * | alert(1)\n * > | ~~~\n * ^\n * ```\n *\n * @type {State}\n */\n function sequenceCloseAfter(code) {\n if (code === null || markdownLineEnding(code)) {\n effects.exit('codeFencedFence')\n return ok(code)\n }\n return nok(code)\n }\n }\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeNonLazyContinuation(effects, ok, nok) {\n const self = this\n return start\n\n /**\n *\n *\n * @type {State}\n */\n function start(code) {\n if (code === null) {\n return nok(code)\n }\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return lineStart\n }\n\n /**\n *\n *\n * @type {State}\n */\n function lineStart(code) {\n return self.parser.lazy[self.now().line] ? nok(code) : ok(code)\n }\n}\n","/// \n\n/* eslint-env browser */\n\nconst element = document.createElement('i')\n\n/**\n * @param {string} value\n * @returns {string|false}\n */\nexport function decodeNamedCharacterReference(value) {\n const characterReference = '&' + value + ';'\n element.innerHTML = characterReference\n const char = element.textContent\n\n // Some named character references do not require the closing semicolon\n // (`¬`, for instance), which leads to situations where parsing the assumed\n // named reference of `¬it;` will result in the string `¬it;`.\n // When we encounter a trailing semicolon after parsing, and the character\n // reference to decode was not a semicolon (`;`), we can assume that the\n // matching was not complete.\n // @ts-expect-error: TypeScript is wrong that `textContent` on elements can\n // yield `null`.\n if (char.charCodeAt(char.length - 1) === 59 /* `;` */ && value !== 'semi') {\n return false\n }\n\n // If the decoded string is equal to the input, the character reference was\n // not valid.\n // @ts-expect-error: TypeScript is wrong that `textContent` on elements can\n // yield `null`.\n return char === characterReference ? false : char\n}\n","/**\n * @typedef {import('micromark-util-types').Code} Code\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {decodeNamedCharacterReference} from 'decode-named-character-reference'\nimport {\n asciiAlphanumeric,\n asciiDigit,\n asciiHexDigit\n} from 'micromark-util-character'\n/** @type {Construct} */\nexport const characterReference = {\n name: 'characterReference',\n tokenize: tokenizeCharacterReference\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeCharacterReference(effects, ok, nok) {\n const self = this\n let size = 0\n /** @type {number} */\n let max\n /** @type {(code: Code) => boolean} */\n let test\n return start\n\n /**\n * Start of character reference.\n *\n * ```markdown\n * > | a&b\n * ^\n * > | a{b\n * ^\n * > | a b\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n effects.enter('characterReference')\n effects.enter('characterReferenceMarker')\n effects.consume(code)\n effects.exit('characterReferenceMarker')\n return open\n }\n\n /**\n * After `&`, at `#` for numeric references or alphanumeric for named\n * references.\n *\n * ```markdown\n * > | a&b\n * ^\n * > | a{b\n * ^\n * > | a b\n * ^\n * ```\n *\n * @type {State}\n */\n function open(code) {\n if (code === 35) {\n effects.enter('characterReferenceMarkerNumeric')\n effects.consume(code)\n effects.exit('characterReferenceMarkerNumeric')\n return numeric\n }\n effects.enter('characterReferenceValue')\n max = 31\n test = asciiAlphanumeric\n return value(code)\n }\n\n /**\n * After `#`, at `x` for hexadecimals or digit for decimals.\n *\n * ```markdown\n * > | a{b\n * ^\n * > | a b\n * ^\n * ```\n *\n * @type {State}\n */\n function numeric(code) {\n if (code === 88 || code === 120) {\n effects.enter('characterReferenceMarkerHexadecimal')\n effects.consume(code)\n effects.exit('characterReferenceMarkerHexadecimal')\n effects.enter('characterReferenceValue')\n max = 6\n test = asciiHexDigit\n return value\n }\n effects.enter('characterReferenceValue')\n max = 7\n test = asciiDigit\n return value(code)\n }\n\n /**\n * After markers (`&#x`, `&#`, or `&`), in value, before `;`.\n *\n * The character reference kind defines what and how many characters are\n * allowed.\n *\n * ```markdown\n * > | a&b\n * ^^^\n * > | a{b\n * ^^^\n * > | a b\n * ^\n * ```\n *\n * @type {State}\n */\n function value(code) {\n if (code === 59 && size) {\n const token = effects.exit('characterReferenceValue')\n if (\n test === asciiAlphanumeric &&\n !decodeNamedCharacterReference(self.sliceSerialize(token))\n ) {\n return nok(code)\n }\n\n // To do: `markdown-rs` uses a different name:\n // `CharacterReferenceMarkerSemi`.\n effects.enter('characterReferenceMarker')\n effects.consume(code)\n effects.exit('characterReferenceMarker')\n effects.exit('characterReference')\n return ok\n }\n if (test(code) && size++ < max) {\n effects.consume(code)\n return value\n }\n return nok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {asciiPunctuation} from 'micromark-util-character'\n/** @type {Construct} */\nexport const characterEscape = {\n name: 'characterEscape',\n tokenize: tokenizeCharacterEscape\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeCharacterEscape(effects, ok, nok) {\n return start\n\n /**\n * Start of character escape.\n *\n * ```markdown\n * > | a\\*b\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n effects.enter('characterEscape')\n effects.enter('escapeMarker')\n effects.consume(code)\n effects.exit('escapeMarker')\n return inside\n }\n\n /**\n * After `\\`, at punctuation.\n *\n * ```markdown\n * > | a\\*b\n * ^\n * ```\n *\n * @type {State}\n */\n function inside(code) {\n // ASCII punctuation.\n if (asciiPunctuation(code)) {\n effects.enter('characterEscapeValue')\n effects.consume(code)\n effects.exit('characterEscapeValue')\n effects.exit('characterEscape')\n return ok\n }\n return nok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {factorySpace} from 'micromark-factory-space'\nimport {markdownLineEnding} from 'micromark-util-character'\n/** @type {Construct} */\nexport const lineEnding = {\n name: 'lineEnding',\n tokenize: tokenizeLineEnding\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeLineEnding(effects, ok) {\n return start\n\n /** @type {State} */\n function start(code) {\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return factorySpace(effects, ok, 'linePrefix')\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Event} Event\n * @typedef {import('micromark-util-types').Resolver} Resolver\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').Token} Token\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {factoryDestination} from 'micromark-factory-destination'\nimport {factoryLabel} from 'micromark-factory-label'\nimport {factoryTitle} from 'micromark-factory-title'\nimport {factoryWhitespace} from 'micromark-factory-whitespace'\nimport {markdownLineEndingOrSpace} from 'micromark-util-character'\nimport {push, splice} from 'micromark-util-chunked'\nimport {normalizeIdentifier} from 'micromark-util-normalize-identifier'\nimport {resolveAll} from 'micromark-util-resolve-all'\n/** @type {Construct} */\nexport const labelEnd = {\n name: 'labelEnd',\n tokenize: tokenizeLabelEnd,\n resolveTo: resolveToLabelEnd,\n resolveAll: resolveAllLabelEnd\n}\n\n/** @type {Construct} */\nconst resourceConstruct = {\n tokenize: tokenizeResource\n}\n/** @type {Construct} */\nconst referenceFullConstruct = {\n tokenize: tokenizeReferenceFull\n}\n/** @type {Construct} */\nconst referenceCollapsedConstruct = {\n tokenize: tokenizeReferenceCollapsed\n}\n\n/** @type {Resolver} */\nfunction resolveAllLabelEnd(events) {\n let index = -1\n while (++index < events.length) {\n const token = events[index][1]\n if (\n token.type === 'labelImage' ||\n token.type === 'labelLink' ||\n token.type === 'labelEnd'\n ) {\n // Remove the marker.\n events.splice(index + 1, token.type === 'labelImage' ? 4 : 2)\n token.type = 'data'\n index++\n }\n }\n return events\n}\n\n/** @type {Resolver} */\nfunction resolveToLabelEnd(events, context) {\n let index = events.length\n let offset = 0\n /** @type {Token} */\n let token\n /** @type {number | undefined} */\n let open\n /** @type {number | undefined} */\n let close\n /** @type {Array} */\n let media\n\n // Find an opening.\n while (index--) {\n token = events[index][1]\n if (open) {\n // If we see another link, or inactive link label, we’ve been here before.\n if (\n token.type === 'link' ||\n (token.type === 'labelLink' && token._inactive)\n ) {\n break\n }\n\n // Mark other link openings as inactive, as we can’t have links in\n // links.\n if (events[index][0] === 'enter' && token.type === 'labelLink') {\n token._inactive = true\n }\n } else if (close) {\n if (\n events[index][0] === 'enter' &&\n (token.type === 'labelImage' || token.type === 'labelLink') &&\n !token._balanced\n ) {\n open = index\n if (token.type !== 'labelLink') {\n offset = 2\n break\n }\n }\n } else if (token.type === 'labelEnd') {\n close = index\n }\n }\n const group = {\n type: events[open][1].type === 'labelLink' ? 'link' : 'image',\n start: Object.assign({}, events[open][1].start),\n end: Object.assign({}, events[events.length - 1][1].end)\n }\n const label = {\n type: 'label',\n start: Object.assign({}, events[open][1].start),\n end: Object.assign({}, events[close][1].end)\n }\n const text = {\n type: 'labelText',\n start: Object.assign({}, events[open + offset + 2][1].end),\n end: Object.assign({}, events[close - 2][1].start)\n }\n media = [\n ['enter', group, context],\n ['enter', label, context]\n ]\n\n // Opening marker.\n media = push(media, events.slice(open + 1, open + offset + 3))\n\n // Text open.\n media = push(media, [['enter', text, context]])\n\n // Always populated by defaults.\n\n // Between.\n media = push(\n media,\n resolveAll(\n context.parser.constructs.insideSpan.null,\n events.slice(open + offset + 4, close - 3),\n context\n )\n )\n\n // Text close, marker close, label close.\n media = push(media, [\n ['exit', text, context],\n events[close - 2],\n events[close - 1],\n ['exit', label, context]\n ])\n\n // Reference, resource, or so.\n media = push(media, events.slice(close + 1))\n\n // Media close.\n media = push(media, [['exit', group, context]])\n splice(events, open, events.length, media)\n return events\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeLabelEnd(effects, ok, nok) {\n const self = this\n let index = self.events.length\n /** @type {Token} */\n let labelStart\n /** @type {boolean} */\n let defined\n\n // Find an opening.\n while (index--) {\n if (\n (self.events[index][1].type === 'labelImage' ||\n self.events[index][1].type === 'labelLink') &&\n !self.events[index][1]._balanced\n ) {\n labelStart = self.events[index][1]\n break\n }\n }\n return start\n\n /**\n * Start of label end.\n *\n * ```markdown\n * > | [a](b) c\n * ^\n * > | [a][b] c\n * ^\n * > | [a][] b\n * ^\n * > | [a] b\n * ```\n *\n * @type {State}\n */\n function start(code) {\n // If there is not an okay opening.\n if (!labelStart) {\n return nok(code)\n }\n\n // If the corresponding label (link) start is marked as inactive,\n // it means we’d be wrapping a link, like this:\n //\n // ```markdown\n // > | a [b [c](d) e](f) g.\n // ^\n // ```\n //\n // We can’t have that, so it’s just balanced brackets.\n if (labelStart._inactive) {\n return labelEndNok(code)\n }\n defined = self.parser.defined.includes(\n normalizeIdentifier(\n self.sliceSerialize({\n start: labelStart.end,\n end: self.now()\n })\n )\n )\n effects.enter('labelEnd')\n effects.enter('labelMarker')\n effects.consume(code)\n effects.exit('labelMarker')\n effects.exit('labelEnd')\n return after\n }\n\n /**\n * After `]`.\n *\n * ```markdown\n * > | [a](b) c\n * ^\n * > | [a][b] c\n * ^\n * > | [a][] b\n * ^\n * > | [a] b\n * ^\n * ```\n *\n * @type {State}\n */\n function after(code) {\n // Note: `markdown-rs` also parses GFM footnotes here, which for us is in\n // an extension.\n\n // Resource (`[asd](fgh)`)?\n if (code === 40) {\n return effects.attempt(\n resourceConstruct,\n labelEndOk,\n defined ? labelEndOk : labelEndNok\n )(code)\n }\n\n // Full (`[asd][fgh]`) or collapsed (`[asd][]`) reference?\n if (code === 91) {\n return effects.attempt(\n referenceFullConstruct,\n labelEndOk,\n defined ? referenceNotFull : labelEndNok\n )(code)\n }\n\n // Shortcut (`[asd]`) reference?\n return defined ? labelEndOk(code) : labelEndNok(code)\n }\n\n /**\n * After `]`, at `[`, but not at a full reference.\n *\n * > 👉 **Note**: we only get here if the label is defined.\n *\n * ```markdown\n * > | [a][] b\n * ^\n * > | [a] b\n * ^\n * ```\n *\n * @type {State}\n */\n function referenceNotFull(code) {\n return effects.attempt(\n referenceCollapsedConstruct,\n labelEndOk,\n labelEndNok\n )(code)\n }\n\n /**\n * Done, we found something.\n *\n * ```markdown\n * > | [a](b) c\n * ^\n * > | [a][b] c\n * ^\n * > | [a][] b\n * ^\n * > | [a] b\n * ^\n * ```\n *\n * @type {State}\n */\n function labelEndOk(code) {\n // Note: `markdown-rs` does a bunch of stuff here.\n return ok(code)\n }\n\n /**\n * Done, it’s nothing.\n *\n * There was an okay opening, but we didn’t match anything.\n *\n * ```markdown\n * > | [a](b c\n * ^\n * > | [a][b c\n * ^\n * > | [a] b\n * ^\n * ```\n *\n * @type {State}\n */\n function labelEndNok(code) {\n labelStart._balanced = true\n return nok(code)\n }\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeResource(effects, ok, nok) {\n return resourceStart\n\n /**\n * At a resource.\n *\n * ```markdown\n * > | [a](b) c\n * ^\n * ```\n *\n * @type {State}\n */\n function resourceStart(code) {\n effects.enter('resource')\n effects.enter('resourceMarker')\n effects.consume(code)\n effects.exit('resourceMarker')\n return resourceBefore\n }\n\n /**\n * In resource, after `(`, at optional whitespace.\n *\n * ```markdown\n * > | [a](b) c\n * ^\n * ```\n *\n * @type {State}\n */\n function resourceBefore(code) {\n return markdownLineEndingOrSpace(code)\n ? factoryWhitespace(effects, resourceOpen)(code)\n : resourceOpen(code)\n }\n\n /**\n * In resource, after optional whitespace, at `)` or a destination.\n *\n * ```markdown\n * > | [a](b) c\n * ^\n * ```\n *\n * @type {State}\n */\n function resourceOpen(code) {\n if (code === 41) {\n return resourceEnd(code)\n }\n return factoryDestination(\n effects,\n resourceDestinationAfter,\n resourceDestinationMissing,\n 'resourceDestination',\n 'resourceDestinationLiteral',\n 'resourceDestinationLiteralMarker',\n 'resourceDestinationRaw',\n 'resourceDestinationString',\n 32\n )(code)\n }\n\n /**\n * In resource, after destination, at optional whitespace.\n *\n * ```markdown\n * > | [a](b) c\n * ^\n * ```\n *\n * @type {State}\n */\n function resourceDestinationAfter(code) {\n return markdownLineEndingOrSpace(code)\n ? factoryWhitespace(effects, resourceBetween)(code)\n : resourceEnd(code)\n }\n\n /**\n * At invalid destination.\n *\n * ```markdown\n * > | [a](<<) b\n * ^\n * ```\n *\n * @type {State}\n */\n function resourceDestinationMissing(code) {\n return nok(code)\n }\n\n /**\n * In resource, after destination and whitespace, at `(` or title.\n *\n * ```markdown\n * > | [a](b ) c\n * ^\n * ```\n *\n * @type {State}\n */\n function resourceBetween(code) {\n if (code === 34 || code === 39 || code === 40) {\n return factoryTitle(\n effects,\n resourceTitleAfter,\n nok,\n 'resourceTitle',\n 'resourceTitleMarker',\n 'resourceTitleString'\n )(code)\n }\n return resourceEnd(code)\n }\n\n /**\n * In resource, after title, at optional whitespace.\n *\n * ```markdown\n * > | [a](b \"c\") d\n * ^\n * ```\n *\n * @type {State}\n */\n function resourceTitleAfter(code) {\n return markdownLineEndingOrSpace(code)\n ? factoryWhitespace(effects, resourceEnd)(code)\n : resourceEnd(code)\n }\n\n /**\n * In resource, at `)`.\n *\n * ```markdown\n * > | [a](b) d\n * ^\n * ```\n *\n * @type {State}\n */\n function resourceEnd(code) {\n if (code === 41) {\n effects.enter('resourceMarker')\n effects.consume(code)\n effects.exit('resourceMarker')\n effects.exit('resource')\n return ok\n }\n return nok(code)\n }\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeReferenceFull(effects, ok, nok) {\n const self = this\n return referenceFull\n\n /**\n * In a reference (full), at the `[`.\n *\n * ```markdown\n * > | [a][b] d\n * ^\n * ```\n *\n * @type {State}\n */\n function referenceFull(code) {\n return factoryLabel.call(\n self,\n effects,\n referenceFullAfter,\n referenceFullMissing,\n 'reference',\n 'referenceMarker',\n 'referenceString'\n )(code)\n }\n\n /**\n * In a reference (full), after `]`.\n *\n * ```markdown\n * > | [a][b] d\n * ^\n * ```\n *\n * @type {State}\n */\n function referenceFullAfter(code) {\n return self.parser.defined.includes(\n normalizeIdentifier(\n self.sliceSerialize(self.events[self.events.length - 1][1]).slice(1, -1)\n )\n )\n ? ok(code)\n : nok(code)\n }\n\n /**\n * In reference (full) that was missing.\n *\n * ```markdown\n * > | [a][b d\n * ^\n * ```\n *\n * @type {State}\n */\n function referenceFullMissing(code) {\n return nok(code)\n }\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeReferenceCollapsed(effects, ok, nok) {\n return referenceCollapsedStart\n\n /**\n * In reference (collapsed), at `[`.\n *\n * > 👉 **Note**: we only get here if the label is defined.\n *\n * ```markdown\n * > | [a][] d\n * ^\n * ```\n *\n * @type {State}\n */\n function referenceCollapsedStart(code) {\n // We only attempt a collapsed label if there’s a `[`.\n\n effects.enter('reference')\n effects.enter('referenceMarker')\n effects.consume(code)\n effects.exit('referenceMarker')\n return referenceCollapsedOpen\n }\n\n /**\n * In reference (collapsed), at `]`.\n *\n * > 👉 **Note**: we only get here if the label is defined.\n *\n * ```markdown\n * > | [a][] d\n * ^\n * ```\n *\n * @type {State}\n */\n function referenceCollapsedOpen(code) {\n if (code === 93) {\n effects.enter('referenceMarker')\n effects.consume(code)\n effects.exit('referenceMarker')\n effects.exit('reference')\n return ok\n }\n return nok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {labelEnd} from './label-end.js'\n\n/** @type {Construct} */\nexport const labelStartImage = {\n name: 'labelStartImage',\n tokenize: tokenizeLabelStartImage,\n resolveAll: labelEnd.resolveAll\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeLabelStartImage(effects, ok, nok) {\n const self = this\n return start\n\n /**\n * Start of label (image) start.\n *\n * ```markdown\n * > | a ![b] c\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n effects.enter('labelImage')\n effects.enter('labelImageMarker')\n effects.consume(code)\n effects.exit('labelImageMarker')\n return open\n }\n\n /**\n * After `!`, at `[`.\n *\n * ```markdown\n * > | a ![b] c\n * ^\n * ```\n *\n * @type {State}\n */\n function open(code) {\n if (code === 91) {\n effects.enter('labelMarker')\n effects.consume(code)\n effects.exit('labelMarker')\n effects.exit('labelImage')\n return after\n }\n return nok(code)\n }\n\n /**\n * After `![`.\n *\n * ```markdown\n * > | a ![b] c\n * ^\n * ```\n *\n * This is needed in because, when GFM footnotes are enabled, images never\n * form when started with a `^`.\n * Instead, links form:\n *\n * ```markdown\n * ![^a](b)\n *\n * ![^a][b]\n *\n * [b]: c\n * ```\n *\n * ```html\n *

!^a

\n *

!^a

\n * ```\n *\n * @type {State}\n */\n function after(code) {\n // To do: use a new field to do this, this is still needed for\n // `micromark-extension-gfm-footnote`, but the `label-start-link`\n // behavior isn’t.\n // Hidden footnotes hook.\n /* c8 ignore next 3 */\n return code === 94 && '_hiddenFootnoteSupport' in self.parser.constructs\n ? nok(code)\n : ok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Code} Code\n */\n\nimport {\n markdownLineEndingOrSpace,\n unicodePunctuation,\n unicodeWhitespace\n} from 'micromark-util-character'\n/**\n * Classify whether a code represents whitespace, punctuation, or something\n * else.\n *\n * Used for attention (emphasis, strong), whose sequences can open or close\n * based on the class of surrounding characters.\n *\n * > 👉 **Note**: eof (`null`) is seen as whitespace.\n *\n * @param {Code} code\n * Code.\n * @returns {typeof constants.characterGroupWhitespace | typeof constants.characterGroupPunctuation | undefined}\n * Group.\n */\nexport function classifyCharacter(code) {\n if (\n code === null ||\n markdownLineEndingOrSpace(code) ||\n unicodeWhitespace(code)\n ) {\n return 1\n }\n if (unicodePunctuation(code)) {\n return 2\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Code} Code\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Event} Event\n * @typedef {import('micromark-util-types').Point} Point\n * @typedef {import('micromark-util-types').Resolver} Resolver\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').Token} Token\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {push, splice} from 'micromark-util-chunked'\nimport {classifyCharacter} from 'micromark-util-classify-character'\nimport {resolveAll} from 'micromark-util-resolve-all'\n/** @type {Construct} */\nexport const attention = {\n name: 'attention',\n tokenize: tokenizeAttention,\n resolveAll: resolveAllAttention\n}\n\n/**\n * Take all events and resolve attention to emphasis or strong.\n *\n * @type {Resolver}\n */\nfunction resolveAllAttention(events, context) {\n let index = -1\n /** @type {number} */\n let open\n /** @type {Token} */\n let group\n /** @type {Token} */\n let text\n /** @type {Token} */\n let openingSequence\n /** @type {Token} */\n let closingSequence\n /** @type {number} */\n let use\n /** @type {Array} */\n let nextEvents\n /** @type {number} */\n let offset\n\n // Walk through all events.\n //\n // Note: performance of this is fine on an mb of normal markdown, but it’s\n // a bottleneck for malicious stuff.\n while (++index < events.length) {\n // Find a token that can close.\n if (\n events[index][0] === 'enter' &&\n events[index][1].type === 'attentionSequence' &&\n events[index][1]._close\n ) {\n open = index\n\n // Now walk back to find an opener.\n while (open--) {\n // Find a token that can open the closer.\n if (\n events[open][0] === 'exit' &&\n events[open][1].type === 'attentionSequence' &&\n events[open][1]._open &&\n // If the markers are the same:\n context.sliceSerialize(events[open][1]).charCodeAt(0) ===\n context.sliceSerialize(events[index][1]).charCodeAt(0)\n ) {\n // If the opening can close or the closing can open,\n // and the close size *is not* a multiple of three,\n // but the sum of the opening and closing size *is* multiple of three,\n // then don’t match.\n if (\n (events[open][1]._close || events[index][1]._open) &&\n (events[index][1].end.offset - events[index][1].start.offset) % 3 &&\n !(\n (events[open][1].end.offset -\n events[open][1].start.offset +\n events[index][1].end.offset -\n events[index][1].start.offset) %\n 3\n )\n ) {\n continue\n }\n\n // Number of markers to use from the sequence.\n use =\n events[open][1].end.offset - events[open][1].start.offset > 1 &&\n events[index][1].end.offset - events[index][1].start.offset > 1\n ? 2\n : 1\n const start = Object.assign({}, events[open][1].end)\n const end = Object.assign({}, events[index][1].start)\n movePoint(start, -use)\n movePoint(end, use)\n openingSequence = {\n type: use > 1 ? 'strongSequence' : 'emphasisSequence',\n start,\n end: Object.assign({}, events[open][1].end)\n }\n closingSequence = {\n type: use > 1 ? 'strongSequence' : 'emphasisSequence',\n start: Object.assign({}, events[index][1].start),\n end\n }\n text = {\n type: use > 1 ? 'strongText' : 'emphasisText',\n start: Object.assign({}, events[open][1].end),\n end: Object.assign({}, events[index][1].start)\n }\n group = {\n type: use > 1 ? 'strong' : 'emphasis',\n start: Object.assign({}, openingSequence.start),\n end: Object.assign({}, closingSequence.end)\n }\n events[open][1].end = Object.assign({}, openingSequence.start)\n events[index][1].start = Object.assign({}, closingSequence.end)\n nextEvents = []\n\n // If there are more markers in the opening, add them before.\n if (events[open][1].end.offset - events[open][1].start.offset) {\n nextEvents = push(nextEvents, [\n ['enter', events[open][1], context],\n ['exit', events[open][1], context]\n ])\n }\n\n // Opening.\n nextEvents = push(nextEvents, [\n ['enter', group, context],\n ['enter', openingSequence, context],\n ['exit', openingSequence, context],\n ['enter', text, context]\n ])\n\n // Always populated by defaults.\n\n // Between.\n nextEvents = push(\n nextEvents,\n resolveAll(\n context.parser.constructs.insideSpan.null,\n events.slice(open + 1, index),\n context\n )\n )\n\n // Closing.\n nextEvents = push(nextEvents, [\n ['exit', text, context],\n ['enter', closingSequence, context],\n ['exit', closingSequence, context],\n ['exit', group, context]\n ])\n\n // If there are more markers in the closing, add them after.\n if (events[index][1].end.offset - events[index][1].start.offset) {\n offset = 2\n nextEvents = push(nextEvents, [\n ['enter', events[index][1], context],\n ['exit', events[index][1], context]\n ])\n } else {\n offset = 0\n }\n splice(events, open - 1, index - open + 3, nextEvents)\n index = open + nextEvents.length - offset - 2\n break\n }\n }\n }\n }\n\n // Remove remaining sequences.\n index = -1\n while (++index < events.length) {\n if (events[index][1].type === 'attentionSequence') {\n events[index][1].type = 'data'\n }\n }\n return events\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeAttention(effects, ok) {\n const attentionMarkers = this.parser.constructs.attentionMarkers.null\n const previous = this.previous\n const before = classifyCharacter(previous)\n\n /** @type {NonNullable} */\n let marker\n return start\n\n /**\n * Before a sequence.\n *\n * ```markdown\n * > | **\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n marker = code\n effects.enter('attentionSequence')\n return inside(code)\n }\n\n /**\n * In a sequence.\n *\n * ```markdown\n * > | **\n * ^^\n * ```\n *\n * @type {State}\n */\n function inside(code) {\n if (code === marker) {\n effects.consume(code)\n return inside\n }\n const token = effects.exit('attentionSequence')\n\n // To do: next major: move this to resolver, just like `markdown-rs`.\n const after = classifyCharacter(code)\n\n // Always populated by defaults.\n\n const open =\n !after || (after === 2 && before) || attentionMarkers.includes(code)\n const close =\n !before || (before === 2 && after) || attentionMarkers.includes(previous)\n token._open = Boolean(marker === 42 ? open : open && (before || !close))\n token._close = Boolean(marker === 42 ? close : close && (after || !open))\n return ok(code)\n }\n}\n\n/**\n * Move a point a bit.\n *\n * Note: `move` only works inside lines! It’s not possible to move past other\n * chunks (replacement characters, tabs, or line endings).\n *\n * @param {Point} point\n * @param {number} offset\n * @returns {void}\n */\nfunction movePoint(point, offset) {\n point.column += offset\n point.offset += offset\n point._bufferIndex += offset\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {\n asciiAlpha,\n asciiAlphanumeric,\n asciiAtext,\n asciiControl\n} from 'micromark-util-character'\n/** @type {Construct} */\nexport const autolink = {\n name: 'autolink',\n tokenize: tokenizeAutolink\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeAutolink(effects, ok, nok) {\n let size = 0\n return start\n\n /**\n * Start of an autolink.\n *\n * ```markdown\n * > | ab\n * ^\n * > | ab\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n effects.enter('autolink')\n effects.enter('autolinkMarker')\n effects.consume(code)\n effects.exit('autolinkMarker')\n effects.enter('autolinkProtocol')\n return open\n }\n\n /**\n * After `<`, at protocol or atext.\n *\n * ```markdown\n * > | ab\n * ^\n * > | ab\n * ^\n * ```\n *\n * @type {State}\n */\n function open(code) {\n if (asciiAlpha(code)) {\n effects.consume(code)\n return schemeOrEmailAtext\n }\n return emailAtext(code)\n }\n\n /**\n * At second byte of protocol or atext.\n *\n * ```markdown\n * > | ab\n * ^\n * > | ab\n * ^\n * ```\n *\n * @type {State}\n */\n function schemeOrEmailAtext(code) {\n // ASCII alphanumeric and `+`, `-`, and `.`.\n if (code === 43 || code === 45 || code === 46 || asciiAlphanumeric(code)) {\n // Count the previous alphabetical from `open` too.\n size = 1\n return schemeInsideOrEmailAtext(code)\n }\n return emailAtext(code)\n }\n\n /**\n * In ambiguous protocol or atext.\n *\n * ```markdown\n * > | ab\n * ^\n * > | ab\n * ^\n * ```\n *\n * @type {State}\n */\n function schemeInsideOrEmailAtext(code) {\n if (code === 58) {\n effects.consume(code)\n size = 0\n return urlInside\n }\n\n // ASCII alphanumeric and `+`, `-`, and `.`.\n if (\n (code === 43 || code === 45 || code === 46 || asciiAlphanumeric(code)) &&\n size++ < 32\n ) {\n effects.consume(code)\n return schemeInsideOrEmailAtext\n }\n size = 0\n return emailAtext(code)\n }\n\n /**\n * After protocol, in URL.\n *\n * ```markdown\n * > | ab\n * ^\n * ```\n *\n * @type {State}\n */\n function urlInside(code) {\n if (code === 62) {\n effects.exit('autolinkProtocol')\n effects.enter('autolinkMarker')\n effects.consume(code)\n effects.exit('autolinkMarker')\n effects.exit('autolink')\n return ok\n }\n\n // ASCII control, space, or `<`.\n if (code === null || code === 32 || code === 60 || asciiControl(code)) {\n return nok(code)\n }\n effects.consume(code)\n return urlInside\n }\n\n /**\n * In email atext.\n *\n * ```markdown\n * > | ab\n * ^\n * ```\n *\n * @type {State}\n */\n function emailAtext(code) {\n if (code === 64) {\n effects.consume(code)\n return emailAtSignOrDot\n }\n if (asciiAtext(code)) {\n effects.consume(code)\n return emailAtext\n }\n return nok(code)\n }\n\n /**\n * In label, after at-sign or dot.\n *\n * ```markdown\n * > | ab\n * ^ ^\n * ```\n *\n * @type {State}\n */\n function emailAtSignOrDot(code) {\n return asciiAlphanumeric(code) ? emailLabel(code) : nok(code)\n }\n\n /**\n * In label, where `.` and `>` are allowed.\n *\n * ```markdown\n * > | ab\n * ^\n * ```\n *\n * @type {State}\n */\n function emailLabel(code) {\n if (code === 46) {\n effects.consume(code)\n size = 0\n return emailAtSignOrDot\n }\n if (code === 62) {\n // Exit, then change the token type.\n effects.exit('autolinkProtocol').type = 'autolinkEmail'\n effects.enter('autolinkMarker')\n effects.consume(code)\n effects.exit('autolinkMarker')\n effects.exit('autolink')\n return ok\n }\n return emailValue(code)\n }\n\n /**\n * In label, where `.` and `>` are *not* allowed.\n *\n * Though, this is also used in `emailLabel` to parse other values.\n *\n * ```markdown\n * > | ab\n * ^\n * ```\n *\n * @type {State}\n */\n function emailValue(code) {\n // ASCII alphanumeric or `-`.\n if ((code === 45 || asciiAlphanumeric(code)) && size++ < 63) {\n const next = code === 45 ? emailValue : emailLabel\n effects.consume(code)\n return next\n }\n return nok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Code} Code\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {factorySpace} from 'micromark-factory-space'\nimport {\n asciiAlpha,\n asciiAlphanumeric,\n markdownLineEnding,\n markdownLineEndingOrSpace,\n markdownSpace\n} from 'micromark-util-character'\n/** @type {Construct} */\nexport const htmlText = {\n name: 'htmlText',\n tokenize: tokenizeHtmlText\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeHtmlText(effects, ok, nok) {\n const self = this\n /** @type {NonNullable | undefined} */\n let marker\n /** @type {number} */\n let index\n /** @type {State} */\n let returnState\n return start\n\n /**\n * Start of HTML (text).\n *\n * ```markdown\n * > | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n effects.enter('htmlText')\n effects.enter('htmlTextData')\n effects.consume(code)\n return open\n }\n\n /**\n * After `<`, at tag name or other stuff.\n *\n * ```markdown\n * > | a c\n * ^\n * > | a c\n * ^\n * > | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function open(code) {\n if (code === 33) {\n effects.consume(code)\n return declarationOpen\n }\n if (code === 47) {\n effects.consume(code)\n return tagCloseStart\n }\n if (code === 63) {\n effects.consume(code)\n return instruction\n }\n\n // ASCII alphabetical.\n if (asciiAlpha(code)) {\n effects.consume(code)\n return tagOpen\n }\n return nok(code)\n }\n\n /**\n * After ` | a c\n * ^\n * > | a c\n * ^\n * > | a &<]]> c\n * ^\n * ```\n *\n * @type {State}\n */\n function declarationOpen(code) {\n if (code === 45) {\n effects.consume(code)\n return commentOpenInside\n }\n if (code === 91) {\n effects.consume(code)\n index = 0\n return cdataOpenInside\n }\n if (asciiAlpha(code)) {\n effects.consume(code)\n return declaration\n }\n return nok(code)\n }\n\n /**\n * In a comment, after ` | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function commentOpenInside(code) {\n if (code === 45) {\n effects.consume(code)\n return commentEnd\n }\n return nok(code)\n }\n\n /**\n * In comment.\n *\n * ```markdown\n * > | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function comment(code) {\n if (code === null) {\n return nok(code)\n }\n if (code === 45) {\n effects.consume(code)\n return commentClose\n }\n if (markdownLineEnding(code)) {\n returnState = comment\n return lineEndingBefore(code)\n }\n effects.consume(code)\n return comment\n }\n\n /**\n * In comment, after `-`.\n *\n * ```markdown\n * > | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function commentClose(code) {\n if (code === 45) {\n effects.consume(code)\n return commentEnd\n }\n return comment(code)\n }\n\n /**\n * In comment, after `--`.\n *\n * ```markdown\n * > | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function commentEnd(code) {\n return code === 62\n ? end(code)\n : code === 45\n ? commentClose(code)\n : comment(code)\n }\n\n /**\n * After ` | a &<]]> b\n * ^^^^^^\n * ```\n *\n * @type {State}\n */\n function cdataOpenInside(code) {\n const value = 'CDATA['\n if (code === value.charCodeAt(index++)) {\n effects.consume(code)\n return index === value.length ? cdata : cdataOpenInside\n }\n return nok(code)\n }\n\n /**\n * In CDATA.\n *\n * ```markdown\n * > | a &<]]> b\n * ^^^\n * ```\n *\n * @type {State}\n */\n function cdata(code) {\n if (code === null) {\n return nok(code)\n }\n if (code === 93) {\n effects.consume(code)\n return cdataClose\n }\n if (markdownLineEnding(code)) {\n returnState = cdata\n return lineEndingBefore(code)\n }\n effects.consume(code)\n return cdata\n }\n\n /**\n * In CDATA, after `]`, at another `]`.\n *\n * ```markdown\n * > | a &<]]> b\n * ^\n * ```\n *\n * @type {State}\n */\n function cdataClose(code) {\n if (code === 93) {\n effects.consume(code)\n return cdataEnd\n }\n return cdata(code)\n }\n\n /**\n * In CDATA, after `]]`, at `>`.\n *\n * ```markdown\n * > | a &<]]> b\n * ^\n * ```\n *\n * @type {State}\n */\n function cdataEnd(code) {\n if (code === 62) {\n return end(code)\n }\n if (code === 93) {\n effects.consume(code)\n return cdataEnd\n }\n return cdata(code)\n }\n\n /**\n * In declaration.\n *\n * ```markdown\n * > | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function declaration(code) {\n if (code === null || code === 62) {\n return end(code)\n }\n if (markdownLineEnding(code)) {\n returnState = declaration\n return lineEndingBefore(code)\n }\n effects.consume(code)\n return declaration\n }\n\n /**\n * In instruction.\n *\n * ```markdown\n * > | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function instruction(code) {\n if (code === null) {\n return nok(code)\n }\n if (code === 63) {\n effects.consume(code)\n return instructionClose\n }\n if (markdownLineEnding(code)) {\n returnState = instruction\n return lineEndingBefore(code)\n }\n effects.consume(code)\n return instruction\n }\n\n /**\n * In instruction, after `?`, at `>`.\n *\n * ```markdown\n * > | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function instructionClose(code) {\n return code === 62 ? end(code) : instruction(code)\n }\n\n /**\n * After ` | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function tagCloseStart(code) {\n // ASCII alphabetical.\n if (asciiAlpha(code)) {\n effects.consume(code)\n return tagClose\n }\n return nok(code)\n }\n\n /**\n * After ` | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function tagClose(code) {\n // ASCII alphanumerical and `-`.\n if (code === 45 || asciiAlphanumeric(code)) {\n effects.consume(code)\n return tagClose\n }\n return tagCloseBetween(code)\n }\n\n /**\n * In closing tag, after tag name.\n *\n * ```markdown\n * > | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function tagCloseBetween(code) {\n if (markdownLineEnding(code)) {\n returnState = tagCloseBetween\n return lineEndingBefore(code)\n }\n if (markdownSpace(code)) {\n effects.consume(code)\n return tagCloseBetween\n }\n return end(code)\n }\n\n /**\n * After ` | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function tagOpen(code) {\n // ASCII alphanumerical and `-`.\n if (code === 45 || asciiAlphanumeric(code)) {\n effects.consume(code)\n return tagOpen\n }\n if (code === 47 || code === 62 || markdownLineEndingOrSpace(code)) {\n return tagOpenBetween(code)\n }\n return nok(code)\n }\n\n /**\n * In opening tag, after tag name.\n *\n * ```markdown\n * > | a c\n * ^\n * ```\n *\n * @type {State}\n */\n function tagOpenBetween(code) {\n if (code === 47) {\n effects.consume(code)\n return end\n }\n\n // ASCII alphabetical and `:` and `_`.\n if (code === 58 || code === 95 || asciiAlpha(code)) {\n effects.consume(code)\n return tagOpenAttributeName\n }\n if (markdownLineEnding(code)) {\n returnState = tagOpenBetween\n return lineEndingBefore(code)\n }\n if (markdownSpace(code)) {\n effects.consume(code)\n return tagOpenBetween\n }\n return end(code)\n }\n\n /**\n * In attribute name.\n *\n * ```markdown\n * > | a d\n * ^\n * ```\n *\n * @type {State}\n */\n function tagOpenAttributeName(code) {\n // ASCII alphabetical and `-`, `.`, `:`, and `_`.\n if (\n code === 45 ||\n code === 46 ||\n code === 58 ||\n code === 95 ||\n asciiAlphanumeric(code)\n ) {\n effects.consume(code)\n return tagOpenAttributeName\n }\n return tagOpenAttributeNameAfter(code)\n }\n\n /**\n * After attribute name, before initializer, the end of the tag, or\n * whitespace.\n *\n * ```markdown\n * > | a d\n * ^\n * ```\n *\n * @type {State}\n */\n function tagOpenAttributeNameAfter(code) {\n if (code === 61) {\n effects.consume(code)\n return tagOpenAttributeValueBefore\n }\n if (markdownLineEnding(code)) {\n returnState = tagOpenAttributeNameAfter\n return lineEndingBefore(code)\n }\n if (markdownSpace(code)) {\n effects.consume(code)\n return tagOpenAttributeNameAfter\n }\n return tagOpenBetween(code)\n }\n\n /**\n * Before unquoted, double quoted, or single quoted attribute value, allowing\n * whitespace.\n *\n * ```markdown\n * > | a e\n * ^\n * ```\n *\n * @type {State}\n */\n function tagOpenAttributeValueBefore(code) {\n if (\n code === null ||\n code === 60 ||\n code === 61 ||\n code === 62 ||\n code === 96\n ) {\n return nok(code)\n }\n if (code === 34 || code === 39) {\n effects.consume(code)\n marker = code\n return tagOpenAttributeValueQuoted\n }\n if (markdownLineEnding(code)) {\n returnState = tagOpenAttributeValueBefore\n return lineEndingBefore(code)\n }\n if (markdownSpace(code)) {\n effects.consume(code)\n return tagOpenAttributeValueBefore\n }\n effects.consume(code)\n return tagOpenAttributeValueUnquoted\n }\n\n /**\n * In double or single quoted attribute value.\n *\n * ```markdown\n * > | a e\n * ^\n * ```\n *\n * @type {State}\n */\n function tagOpenAttributeValueQuoted(code) {\n if (code === marker) {\n effects.consume(code)\n marker = undefined\n return tagOpenAttributeValueQuotedAfter\n }\n if (code === null) {\n return nok(code)\n }\n if (markdownLineEnding(code)) {\n returnState = tagOpenAttributeValueQuoted\n return lineEndingBefore(code)\n }\n effects.consume(code)\n return tagOpenAttributeValueQuoted\n }\n\n /**\n * In unquoted attribute value.\n *\n * ```markdown\n * > | a e\n * ^\n * ```\n *\n * @type {State}\n */\n function tagOpenAttributeValueUnquoted(code) {\n if (\n code === null ||\n code === 34 ||\n code === 39 ||\n code === 60 ||\n code === 61 ||\n code === 96\n ) {\n return nok(code)\n }\n if (code === 47 || code === 62 || markdownLineEndingOrSpace(code)) {\n return tagOpenBetween(code)\n }\n effects.consume(code)\n return tagOpenAttributeValueUnquoted\n }\n\n /**\n * After double or single quoted attribute value, before whitespace or the end\n * of the tag.\n *\n * ```markdown\n * > | a e\n * ^\n * ```\n *\n * @type {State}\n */\n function tagOpenAttributeValueQuotedAfter(code) {\n if (code === 47 || code === 62 || markdownLineEndingOrSpace(code)) {\n return tagOpenBetween(code)\n }\n return nok(code)\n }\n\n /**\n * In certain circumstances of a tag where only an `>` is allowed.\n *\n * ```markdown\n * > | a e\n * ^\n * ```\n *\n * @type {State}\n */\n function end(code) {\n if (code === 62) {\n effects.consume(code)\n effects.exit('htmlTextData')\n effects.exit('htmlText')\n return ok\n }\n return nok(code)\n }\n\n /**\n * At eol.\n *\n * > 👉 **Note**: we can’t have blank lines in text, so no need to worry about\n * > empty tokens.\n *\n * ```markdown\n * > | a \n * ```\n *\n * @type {State}\n */\n function lineEndingBefore(code) {\n effects.exit('htmlTextData')\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return lineEndingAfter\n }\n\n /**\n * After eol, at optional whitespace.\n *\n * > 👉 **Note**: we can’t have blank lines in text, so no need to worry about\n * > empty tokens.\n *\n * ```markdown\n * | a \n * ^\n * ```\n *\n * @type {State}\n */\n function lineEndingAfter(code) {\n // Always populated by defaults.\n\n return markdownSpace(code)\n ? factorySpace(\n effects,\n lineEndingAfterPrefix,\n 'linePrefix',\n self.parser.constructs.disable.null.includes('codeIndented')\n ? undefined\n : 4\n )(code)\n : lineEndingAfterPrefix(code)\n }\n\n /**\n * After eol, after optional whitespace.\n *\n * > 👉 **Note**: we can’t have blank lines in text, so no need to worry about\n * > empty tokens.\n *\n * ```markdown\n * | a \n * ^\n * ```\n *\n * @type {State}\n */\n function lineEndingAfterPrefix(code) {\n effects.enter('htmlTextData')\n return returnState(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {labelEnd} from './label-end.js'\n\n/** @type {Construct} */\nexport const labelStartLink = {\n name: 'labelStartLink',\n tokenize: tokenizeLabelStartLink,\n resolveAll: labelEnd.resolveAll\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeLabelStartLink(effects, ok, nok) {\n const self = this\n return start\n\n /**\n * Start of label (link) start.\n *\n * ```markdown\n * > | a [b] c\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n effects.enter('labelLink')\n effects.enter('labelMarker')\n effects.consume(code)\n effects.exit('labelMarker')\n effects.exit('labelLink')\n return after\n }\n\n /** @type {State} */\n function after(code) {\n // To do: this isn’t needed in `micromark-extension-gfm-footnote`,\n // remove.\n // Hidden footnotes hook.\n /* c8 ignore next 3 */\n return code === 94 && '_hiddenFootnoteSupport' in self.parser.constructs\n ? nok(code)\n : ok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {markdownLineEnding} from 'micromark-util-character'\n/** @type {Construct} */\nexport const hardBreakEscape = {\n name: 'hardBreakEscape',\n tokenize: tokenizeHardBreakEscape\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeHardBreakEscape(effects, ok, nok) {\n return start\n\n /**\n * Start of a hard break (escape).\n *\n * ```markdown\n * > | a\\\n * ^\n * | b\n * ```\n *\n * @type {State}\n */\n function start(code) {\n effects.enter('hardBreakEscape')\n effects.consume(code)\n return after\n }\n\n /**\n * After `\\`, at eol.\n *\n * ```markdown\n * > | a\\\n * ^\n * | b\n * ```\n *\n * @type {State}\n */\n function after(code) {\n if (markdownLineEnding(code)) {\n effects.exit('hardBreakEscape')\n return ok(code)\n }\n return nok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Previous} Previous\n * @typedef {import('micromark-util-types').Resolver} Resolver\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').Token} Token\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n */\n\nimport {markdownLineEnding} from 'micromark-util-character'\n/** @type {Construct} */\nexport const codeText = {\n name: 'codeText',\n tokenize: tokenizeCodeText,\n resolve: resolveCodeText,\n previous\n}\n\n// To do: next major: don’t resolve, like `markdown-rs`.\n/** @type {Resolver} */\nfunction resolveCodeText(events) {\n let tailExitIndex = events.length - 4\n let headEnterIndex = 3\n /** @type {number} */\n let index\n /** @type {number | undefined} */\n let enter\n\n // If we start and end with an EOL or a space.\n if (\n (events[headEnterIndex][1].type === 'lineEnding' ||\n events[headEnterIndex][1].type === 'space') &&\n (events[tailExitIndex][1].type === 'lineEnding' ||\n events[tailExitIndex][1].type === 'space')\n ) {\n index = headEnterIndex\n\n // And we have data.\n while (++index < tailExitIndex) {\n if (events[index][1].type === 'codeTextData') {\n // Then we have padding.\n events[headEnterIndex][1].type = 'codeTextPadding'\n events[tailExitIndex][1].type = 'codeTextPadding'\n headEnterIndex += 2\n tailExitIndex -= 2\n break\n }\n }\n }\n\n // Merge adjacent spaces and data.\n index = headEnterIndex - 1\n tailExitIndex++\n while (++index <= tailExitIndex) {\n if (enter === undefined) {\n if (index !== tailExitIndex && events[index][1].type !== 'lineEnding') {\n enter = index\n }\n } else if (\n index === tailExitIndex ||\n events[index][1].type === 'lineEnding'\n ) {\n events[enter][1].type = 'codeTextData'\n if (index !== enter + 2) {\n events[enter][1].end = events[index - 1][1].end\n events.splice(enter + 2, index - enter - 2)\n tailExitIndex -= index - enter - 2\n index = enter + 2\n }\n enter = undefined\n }\n }\n return events\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Previous}\n */\nfunction previous(code) {\n // If there is a previous code, there will always be a tail.\n return (\n code !== 96 ||\n this.events[this.events.length - 1][1].type === 'characterEscape'\n )\n}\n\n/**\n * @this {TokenizeContext}\n * @type {Tokenizer}\n */\nfunction tokenizeCodeText(effects, ok, nok) {\n const self = this\n let sizeOpen = 0\n /** @type {number} */\n let size\n /** @type {Token} */\n let token\n return start\n\n /**\n * Start of code (text).\n *\n * ```markdown\n * > | `a`\n * ^\n * > | \\`a`\n * ^\n * ```\n *\n * @type {State}\n */\n function start(code) {\n effects.enter('codeText')\n effects.enter('codeTextSequence')\n return sequenceOpen(code)\n }\n\n /**\n * In opening sequence.\n *\n * ```markdown\n * > | `a`\n * ^\n * ```\n *\n * @type {State}\n */\n function sequenceOpen(code) {\n if (code === 96) {\n effects.consume(code)\n sizeOpen++\n return sequenceOpen\n }\n effects.exit('codeTextSequence')\n return between(code)\n }\n\n /**\n * Between something and something else.\n *\n * ```markdown\n * > | `a`\n * ^^\n * ```\n *\n * @type {State}\n */\n function between(code) {\n // EOF.\n if (code === null) {\n return nok(code)\n }\n\n // To do: next major: don’t do spaces in resolve, but when compiling,\n // like `markdown-rs`.\n // Tabs don’t work, and virtual spaces don’t make sense.\n if (code === 32) {\n effects.enter('space')\n effects.consume(code)\n effects.exit('space')\n return between\n }\n\n // Closing fence? Could also be data.\n if (code === 96) {\n token = effects.enter('codeTextSequence')\n size = 0\n return sequenceClose(code)\n }\n if (markdownLineEnding(code)) {\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return between\n }\n\n // Data.\n effects.enter('codeTextData')\n return data(code)\n }\n\n /**\n * In data.\n *\n * ```markdown\n * > | `a`\n * ^\n * ```\n *\n * @type {State}\n */\n function data(code) {\n if (\n code === null ||\n code === 32 ||\n code === 96 ||\n markdownLineEnding(code)\n ) {\n effects.exit('codeTextData')\n return between(code)\n }\n effects.consume(code)\n return data\n }\n\n /**\n * In closing sequence.\n *\n * ```markdown\n * > | `a`\n * ^\n * ```\n *\n * @type {State}\n */\n function sequenceClose(code) {\n // More.\n if (code === 96) {\n effects.consume(code)\n size++\n return sequenceClose\n }\n\n // Done!\n if (size === sizeOpen) {\n effects.exit('codeTextSequence')\n effects.exit('codeText')\n return ok(code)\n }\n\n // More or less accents: mark as data.\n token.type = 'codeTextData'\n return data(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Extension} Extension\n */\n\nimport {\n attention,\n autolink,\n blockQuote,\n characterEscape,\n characterReference,\n codeFenced,\n codeIndented,\n codeText,\n definition,\n hardBreakEscape,\n headingAtx,\n htmlFlow,\n htmlText,\n labelEnd,\n labelStartImage,\n labelStartLink,\n lineEnding,\n list,\n setextUnderline,\n thematicBreak\n} from 'micromark-core-commonmark'\nimport {resolver as resolveText} from './initialize/text.js'\n\n/** @satisfies {Extension['document']} */\nexport const document = {\n [42]: list,\n [43]: list,\n [45]: list,\n [48]: list,\n [49]: list,\n [50]: list,\n [51]: list,\n [52]: list,\n [53]: list,\n [54]: list,\n [55]: list,\n [56]: list,\n [57]: list,\n [62]: blockQuote\n}\n\n/** @satisfies {Extension['contentInitial']} */\nexport const contentInitial = {\n [91]: definition\n}\n\n/** @satisfies {Extension['flowInitial']} */\nexport const flowInitial = {\n [-2]: codeIndented,\n [-1]: codeIndented,\n [32]: codeIndented\n}\n\n/** @satisfies {Extension['flow']} */\nexport const flow = {\n [35]: headingAtx,\n [42]: thematicBreak,\n [45]: [setextUnderline, thematicBreak],\n [60]: htmlFlow,\n [61]: setextUnderline,\n [95]: thematicBreak,\n [96]: codeFenced,\n [126]: codeFenced\n}\n\n/** @satisfies {Extension['string']} */\nexport const string = {\n [38]: characterReference,\n [92]: characterEscape\n}\n\n/** @satisfies {Extension['text']} */\nexport const text = {\n [-5]: lineEnding,\n [-4]: lineEnding,\n [-3]: lineEnding,\n [33]: labelStartImage,\n [38]: characterReference,\n [42]: attention,\n [60]: [autolink, htmlText],\n [91]: labelStartLink,\n [92]: [hardBreakEscape, characterEscape],\n [93]: labelEnd,\n [95]: attention,\n [96]: codeText\n}\n\n/** @satisfies {Extension['insideSpan']} */\nexport const insideSpan = {\n null: [attention, resolveText]\n}\n\n/** @satisfies {Extension['attentionMarkers']} */\nexport const attentionMarkers = {\n null: [42, 95]\n}\n\n/** @satisfies {Extension['disable']} */\nexport const disable = {\n null: []\n}\n","/**\n * @typedef {import('micromark-util-types').Create} Create\n * @typedef {import('micromark-util-types').FullNormalizedExtension} FullNormalizedExtension\n * @typedef {import('micromark-util-types').InitialConstruct} InitialConstruct\n * @typedef {import('micromark-util-types').ParseContext} ParseContext\n * @typedef {import('micromark-util-types').ParseOptions} ParseOptions\n */\n\nimport {combineExtensions} from 'micromark-util-combine-extensions'\nimport {content} from './initialize/content.js'\nimport {document} from './initialize/document.js'\nimport {flow} from './initialize/flow.js'\nimport {text, string} from './initialize/text.js'\nimport {createTokenizer} from './create-tokenizer.js'\nimport * as defaultConstructs from './constructs.js'\n\n/**\n * @param {ParseOptions | null | undefined} [options]\n * @returns {ParseContext}\n */\nexport function parse(options) {\n const settings = options || {}\n const constructs =\n /** @type {FullNormalizedExtension} */\n combineExtensions([defaultConstructs, ...(settings.extensions || [])])\n\n /** @type {ParseContext} */\n const parser = {\n defined: [],\n lazy: {},\n constructs,\n content: create(content),\n document: create(document),\n flow: create(flow),\n string: create(string),\n text: create(text)\n }\n return parser\n\n /**\n * @param {InitialConstruct} initial\n */\n function create(initial) {\n return creator\n /** @type {Create} */\n function creator(from) {\n return createTokenizer(parser, initial, from)\n }\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Chunk} Chunk\n * @typedef {import('micromark-util-types').Code} Code\n * @typedef {import('micromark-util-types').Encoding} Encoding\n * @typedef {import('micromark-util-types').Value} Value\n */\n\n/**\n * @callback Preprocessor\n * @param {Value} value\n * @param {Encoding | null | undefined} [encoding]\n * @param {boolean | null | undefined} [end=false]\n * @returns {Array}\n */\n\nconst search = /[\\0\\t\\n\\r]/g\n\n/**\n * @returns {Preprocessor}\n */\nexport function preprocess() {\n let column = 1\n let buffer = ''\n /** @type {boolean | undefined} */\n let start = true\n /** @type {boolean | undefined} */\n let atCarriageReturn\n return preprocessor\n\n /** @type {Preprocessor} */\n function preprocessor(value, encoding, end) {\n /** @type {Array} */\n const chunks = []\n /** @type {RegExpMatchArray | null} */\n let match\n /** @type {number} */\n let next\n /** @type {number} */\n let startPosition\n /** @type {number} */\n let endPosition\n /** @type {Code} */\n let code\n\n // @ts-expect-error `Buffer` does allow an encoding.\n value = buffer + value.toString(encoding)\n startPosition = 0\n buffer = ''\n if (start) {\n // To do: `markdown-rs` actually parses BOMs (byte order mark).\n if (value.charCodeAt(0) === 65279) {\n startPosition++\n }\n start = undefined\n }\n while (startPosition < value.length) {\n search.lastIndex = startPosition\n match = search.exec(value)\n endPosition =\n match && match.index !== undefined ? match.index : value.length\n code = value.charCodeAt(endPosition)\n if (!match) {\n buffer = value.slice(startPosition)\n break\n }\n if (code === 10 && startPosition === endPosition && atCarriageReturn) {\n chunks.push(-3)\n atCarriageReturn = undefined\n } else {\n if (atCarriageReturn) {\n chunks.push(-5)\n atCarriageReturn = undefined\n }\n if (startPosition < endPosition) {\n chunks.push(value.slice(startPosition, endPosition))\n column += endPosition - startPosition\n }\n switch (code) {\n case 0: {\n chunks.push(65533)\n column++\n break\n }\n case 9: {\n next = Math.ceil(column / 4) * 4\n chunks.push(-2)\n while (column++ < next) chunks.push(-1)\n break\n }\n case 10: {\n chunks.push(-4)\n column = 1\n break\n }\n default: {\n atCarriageReturn = true\n column = 1\n }\n }\n }\n startPosition = endPosition + 1\n }\n if (end) {\n if (atCarriageReturn) chunks.push(-5)\n if (buffer) chunks.push(buffer)\n chunks.push(null)\n }\n return chunks\n }\n}\n","/**\n * Turn the number (in string form as either hexa- or plain decimal) coming from\n * a numeric character reference into a character.\n *\n * Sort of like `String.fromCharCode(Number.parseInt(value, base))`, but makes\n * non-characters and control characters safe.\n *\n * @param {string} value\n * Value to decode.\n * @param {number} base\n * Numeric base.\n * @returns {string}\n * Character.\n */\nexport function decodeNumericCharacterReference(value, base) {\n const code = Number.parseInt(value, base)\n if (\n // C0 except for HT, LF, FF, CR, space.\n code < 9 ||\n code === 11 ||\n (code > 13 && code < 32) ||\n // Control character (DEL) of C0, and C1 controls.\n (code > 126 && code < 160) ||\n // Lone high surrogates and low surrogates.\n (code > 55295 && code < 57344) ||\n // Noncharacters.\n (code > 64975 && code < 65008) /* eslint-disable no-bitwise */ ||\n (code & 65535) === 65535 ||\n (code & 65535) === 65534 /* eslint-enable no-bitwise */ ||\n // Out of range\n code > 1114111\n ) {\n return '\\uFFFD'\n }\n return String.fromCharCode(code)\n}\n","import {decodeNamedCharacterReference} from 'decode-named-character-reference'\nimport {decodeNumericCharacterReference} from 'micromark-util-decode-numeric-character-reference'\nconst characterEscapeOrReference =\n /\\\\([!-/:-@[-`{-~])|&(#(?:\\d{1,7}|x[\\da-f]{1,6})|[\\da-z]{1,31});/gi\n\n/**\n * Decode markdown strings (which occur in places such as fenced code info\n * strings, destinations, labels, and titles).\n *\n * The “string” content type allows character escapes and -references.\n * This decodes those.\n *\n * @param {string} value\n * Value to decode.\n * @returns {string}\n * Decoded value.\n */\nexport function decodeString(value) {\n return value.replace(characterEscapeOrReference, decode)\n}\n\n/**\n * @param {string} $0\n * @param {string} $1\n * @param {string} $2\n * @returns {string}\n */\nfunction decode($0, $1, $2) {\n if ($1) {\n // Escape.\n return $1\n }\n\n // Reference.\n const head = $2.charCodeAt(0)\n if (head === 35) {\n const head = $2.charCodeAt(1)\n const hex = head === 120 || head === 88\n return decodeNumericCharacterReference($2.slice(hex ? 2 : 1), hex ? 16 : 10)\n }\n return decodeNamedCharacterReference($2) || $0\n}\n","/**\n * @typedef {import('micromark-util-types').Encoding} Encoding\n * @typedef {import('micromark-util-types').Event} Event\n * @typedef {import('micromark-util-types').ParseOptions} ParseOptions\n * @typedef {import('micromark-util-types').Token} Token\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Value} Value\n *\n * @typedef {import('unist').Parent} UnistParent\n * @typedef {import('unist').Point} Point\n *\n * @typedef {import('mdast').PhrasingContent} PhrasingContent\n * @typedef {import('mdast').StaticPhrasingContent} StaticPhrasingContent\n * @typedef {import('mdast').Content} Content\n * @typedef {import('mdast').Break} Break\n * @typedef {import('mdast').Blockquote} Blockquote\n * @typedef {import('mdast').Code} Code\n * @typedef {import('mdast').Definition} Definition\n * @typedef {import('mdast').Emphasis} Emphasis\n * @typedef {import('mdast').Heading} Heading\n * @typedef {import('mdast').HTML} HTML\n * @typedef {import('mdast').Image} Image\n * @typedef {import('mdast').ImageReference} ImageReference\n * @typedef {import('mdast').InlineCode} InlineCode\n * @typedef {import('mdast').Link} Link\n * @typedef {import('mdast').LinkReference} LinkReference\n * @typedef {import('mdast').List} List\n * @typedef {import('mdast').ListItem} ListItem\n * @typedef {import('mdast').Paragraph} Paragraph\n * @typedef {import('mdast').Root} Root\n * @typedef {import('mdast').Strong} Strong\n * @typedef {import('mdast').Text} Text\n * @typedef {import('mdast').ThematicBreak} ThematicBreak\n * @typedef {import('mdast').ReferenceType} ReferenceType\n * @typedef {import('../index.js').CompileData} CompileData\n */\n\n/**\n * @typedef {Root | Content} Node\n * @typedef {Extract} Parent\n *\n * @typedef {Omit & {type: 'fragment', children: Array}} Fragment\n */\n\n/**\n * @callback Transform\n * Extra transform, to change the AST afterwards.\n * @param {Root} tree\n * Tree to transform.\n * @returns {Root | undefined | null | void}\n * New tree or nothing (in which case the current tree is used).\n *\n * @callback Handle\n * Handle a token.\n * @param {CompileContext} this\n * Context.\n * @param {Token} token\n * Current token.\n * @returns {void}\n * Nothing.\n *\n * @typedef {Record} Handles\n * Token types mapping to handles\n *\n * @callback OnEnterError\n * Handle the case where the `right` token is open, but it is closed (by the\n * `left` token) or because we reached the end of the document.\n * @param {Omit} this\n * Context.\n * @param {Token | undefined} left\n * Left token.\n * @param {Token} right\n * Right token.\n * @returns {void}\n * Nothing.\n *\n * @callback OnExitError\n * Handle the case where the `right` token is open but it is closed by\n * exiting the `left` token.\n * @param {Omit} this\n * Context.\n * @param {Token} left\n * Left token.\n * @param {Token} right\n * Right token.\n * @returns {void}\n * Nothing.\n *\n * @typedef {[Token, OnEnterError | undefined]} TokenTuple\n * Open token on the stack, with an optional error handler for when\n * that token isn’t closed properly.\n */\n\n/**\n * @typedef Config\n * Configuration.\n *\n * We have our defaults, but extensions will add more.\n * @property {Array} canContainEols\n * Token types where line endings are used.\n * @property {Handles} enter\n * Opening handles.\n * @property {Handles} exit\n * Closing handles.\n * @property {Array} transforms\n * Tree transforms.\n *\n * @typedef {Partial} Extension\n * Change how markdown tokens from micromark are turned into mdast.\n *\n * @typedef CompileContext\n * mdast compiler context.\n * @property {Array} stack\n * Stack of nodes.\n * @property {Array} tokenStack\n * Stack of tokens.\n * @property {(key: Key) => CompileData[Key]} getData\n * Get data from the key/value store.\n * @property {(key: Key, value?: CompileData[Key]) => void} setData\n * Set data into the key/value store.\n * @property {(this: CompileContext) => void} buffer\n * Capture some of the output data.\n * @property {(this: CompileContext) => string} resume\n * Stop capturing and access the output data.\n * @property {(this: CompileContext, node: Kind, token: Token, onError?: OnEnterError) => Kind} enter\n * Enter a token.\n * @property {(this: CompileContext, token: Token, onError?: OnExitError) => Node} exit\n * Exit a token.\n * @property {TokenizeContext['sliceSerialize']} sliceSerialize\n * Get the string value of a token.\n * @property {Config} config\n * Configuration.\n *\n * @typedef FromMarkdownOptions\n * Configuration for how to build mdast.\n * @property {Array> | null | undefined} [mdastExtensions]\n * Extensions for this utility to change how tokens are turned into a tree.\n *\n * @typedef {ParseOptions & FromMarkdownOptions} Options\n * Configuration.\n */\n\n// To do: micromark: create a registry of tokens?\n// To do: next major: don’t return given `Node` from `enter`.\n// To do: next major: remove setter/getter.\n\nimport {toString} from 'mdast-util-to-string'\nimport {parse} from 'micromark/lib/parse.js'\nimport {preprocess} from 'micromark/lib/preprocess.js'\nimport {postprocess} from 'micromark/lib/postprocess.js'\nimport {decodeNumericCharacterReference} from 'micromark-util-decode-numeric-character-reference'\nimport {decodeString} from 'micromark-util-decode-string'\nimport {normalizeIdentifier} from 'micromark-util-normalize-identifier'\nimport {decodeNamedCharacterReference} from 'decode-named-character-reference'\nimport {stringifyPosition} from 'unist-util-stringify-position'\nconst own = {}.hasOwnProperty\n\n/**\n * @param value\n * Markdown to parse.\n * @param encoding\n * Character encoding for when `value` is `Buffer`.\n * @param options\n * Configuration.\n * @returns\n * mdast tree.\n */\nexport const fromMarkdown =\n /**\n * @type {(\n * ((value: Value, encoding: Encoding, options?: Options | null | undefined) => Root) &\n * ((value: Value, options?: Options | null | undefined) => Root)\n * )}\n */\n\n /**\n * @param {Value} value\n * @param {Encoding | Options | null | undefined} [encoding]\n * @param {Options | null | undefined} [options]\n * @returns {Root}\n */\n function (value, encoding, options) {\n if (typeof encoding !== 'string') {\n options = encoding\n encoding = undefined\n }\n return compiler(options)(\n postprocess(\n parse(options).document().write(preprocess()(value, encoding, true))\n )\n )\n }\n\n/**\n * Note this compiler only understand complete buffering, not streaming.\n *\n * @param {Options | null | undefined} [options]\n */\nfunction compiler(options) {\n /** @type {Config} */\n const config = {\n transforms: [],\n canContainEols: ['emphasis', 'fragment', 'heading', 'paragraph', 'strong'],\n enter: {\n autolink: opener(link),\n autolinkProtocol: onenterdata,\n autolinkEmail: onenterdata,\n atxHeading: opener(heading),\n blockQuote: opener(blockQuote),\n characterEscape: onenterdata,\n characterReference: onenterdata,\n codeFenced: opener(codeFlow),\n codeFencedFenceInfo: buffer,\n codeFencedFenceMeta: buffer,\n codeIndented: opener(codeFlow, buffer),\n codeText: opener(codeText, buffer),\n codeTextData: onenterdata,\n data: onenterdata,\n codeFlowValue: onenterdata,\n definition: opener(definition),\n definitionDestinationString: buffer,\n definitionLabelString: buffer,\n definitionTitleString: buffer,\n emphasis: opener(emphasis),\n hardBreakEscape: opener(hardBreak),\n hardBreakTrailing: opener(hardBreak),\n htmlFlow: opener(html, buffer),\n htmlFlowData: onenterdata,\n htmlText: opener(html, buffer),\n htmlTextData: onenterdata,\n image: opener(image),\n label: buffer,\n link: opener(link),\n listItem: opener(listItem),\n listItemValue: onenterlistitemvalue,\n listOrdered: opener(list, onenterlistordered),\n listUnordered: opener(list),\n paragraph: opener(paragraph),\n reference: onenterreference,\n referenceString: buffer,\n resourceDestinationString: buffer,\n resourceTitleString: buffer,\n setextHeading: opener(heading),\n strong: opener(strong),\n thematicBreak: opener(thematicBreak)\n },\n exit: {\n atxHeading: closer(),\n atxHeadingSequence: onexitatxheadingsequence,\n autolink: closer(),\n autolinkEmail: onexitautolinkemail,\n autolinkProtocol: onexitautolinkprotocol,\n blockQuote: closer(),\n characterEscapeValue: onexitdata,\n characterReferenceMarkerHexadecimal: onexitcharacterreferencemarker,\n characterReferenceMarkerNumeric: onexitcharacterreferencemarker,\n characterReferenceValue: onexitcharacterreferencevalue,\n codeFenced: closer(onexitcodefenced),\n codeFencedFence: onexitcodefencedfence,\n codeFencedFenceInfo: onexitcodefencedfenceinfo,\n codeFencedFenceMeta: onexitcodefencedfencemeta,\n codeFlowValue: onexitdata,\n codeIndented: closer(onexitcodeindented),\n codeText: closer(onexitcodetext),\n codeTextData: onexitdata,\n data: onexitdata,\n definition: closer(),\n definitionDestinationString: onexitdefinitiondestinationstring,\n definitionLabelString: onexitdefinitionlabelstring,\n definitionTitleString: onexitdefinitiontitlestring,\n emphasis: closer(),\n hardBreakEscape: closer(onexithardbreak),\n hardBreakTrailing: closer(onexithardbreak),\n htmlFlow: closer(onexithtmlflow),\n htmlFlowData: onexitdata,\n htmlText: closer(onexithtmltext),\n htmlTextData: onexitdata,\n image: closer(onexitimage),\n label: onexitlabel,\n labelText: onexitlabeltext,\n lineEnding: onexitlineending,\n link: closer(onexitlink),\n listItem: closer(),\n listOrdered: closer(),\n listUnordered: closer(),\n paragraph: closer(),\n referenceString: onexitreferencestring,\n resourceDestinationString: onexitresourcedestinationstring,\n resourceTitleString: onexitresourcetitlestring,\n resource: onexitresource,\n setextHeading: closer(onexitsetextheading),\n setextHeadingLineSequence: onexitsetextheadinglinesequence,\n setextHeadingText: onexitsetextheadingtext,\n strong: closer(),\n thematicBreak: closer()\n }\n }\n configure(config, (options || {}).mdastExtensions || [])\n\n /** @type {CompileData} */\n const data = {}\n return compile\n\n /**\n * Turn micromark events into an mdast tree.\n *\n * @param {Array} events\n * Events.\n * @returns {Root}\n * mdast tree.\n */\n function compile(events) {\n /** @type {Root} */\n let tree = {\n type: 'root',\n children: []\n }\n /** @type {Omit} */\n const context = {\n stack: [tree],\n tokenStack: [],\n config,\n enter,\n exit,\n buffer,\n resume,\n setData,\n getData\n }\n /** @type {Array} */\n const listStack = []\n let index = -1\n while (++index < events.length) {\n // We preprocess lists to add `listItem` tokens, and to infer whether\n // items the list itself are spread out.\n if (\n events[index][1].type === 'listOrdered' ||\n events[index][1].type === 'listUnordered'\n ) {\n if (events[index][0] === 'enter') {\n listStack.push(index)\n } else {\n const tail = listStack.pop()\n index = prepareList(events, tail, index)\n }\n }\n }\n index = -1\n while (++index < events.length) {\n const handler = config[events[index][0]]\n if (own.call(handler, events[index][1].type)) {\n handler[events[index][1].type].call(\n Object.assign(\n {\n sliceSerialize: events[index][2].sliceSerialize\n },\n context\n ),\n events[index][1]\n )\n }\n }\n\n // Handle tokens still being open.\n if (context.tokenStack.length > 0) {\n const tail = context.tokenStack[context.tokenStack.length - 1]\n const handler = tail[1] || defaultOnError\n handler.call(context, undefined, tail[0])\n }\n\n // Figure out `root` position.\n tree.position = {\n start: point(\n events.length > 0\n ? events[0][1].start\n : {\n line: 1,\n column: 1,\n offset: 0\n }\n ),\n end: point(\n events.length > 0\n ? events[events.length - 2][1].end\n : {\n line: 1,\n column: 1,\n offset: 0\n }\n )\n }\n\n // Call transforms.\n index = -1\n while (++index < config.transforms.length) {\n tree = config.transforms[index](tree) || tree\n }\n return tree\n }\n\n /**\n * @param {Array} events\n * @param {number} start\n * @param {number} length\n * @returns {number}\n */\n function prepareList(events, start, length) {\n let index = start - 1\n let containerBalance = -1\n let listSpread = false\n /** @type {Token | undefined} */\n let listItem\n /** @type {number | undefined} */\n let lineIndex\n /** @type {number | undefined} */\n let firstBlankLineIndex\n /** @type {boolean | undefined} */\n let atMarker\n while (++index <= length) {\n const event = events[index]\n if (\n event[1].type === 'listUnordered' ||\n event[1].type === 'listOrdered' ||\n event[1].type === 'blockQuote'\n ) {\n if (event[0] === 'enter') {\n containerBalance++\n } else {\n containerBalance--\n }\n atMarker = undefined\n } else if (event[1].type === 'lineEndingBlank') {\n if (event[0] === 'enter') {\n if (\n listItem &&\n !atMarker &&\n !containerBalance &&\n !firstBlankLineIndex\n ) {\n firstBlankLineIndex = index\n }\n atMarker = undefined\n }\n } else if (\n event[1].type === 'linePrefix' ||\n event[1].type === 'listItemValue' ||\n event[1].type === 'listItemMarker' ||\n event[1].type === 'listItemPrefix' ||\n event[1].type === 'listItemPrefixWhitespace'\n ) {\n // Empty.\n } else {\n atMarker = undefined\n }\n if (\n (!containerBalance &&\n event[0] === 'enter' &&\n event[1].type === 'listItemPrefix') ||\n (containerBalance === -1 &&\n event[0] === 'exit' &&\n (event[1].type === 'listUnordered' ||\n event[1].type === 'listOrdered'))\n ) {\n if (listItem) {\n let tailIndex = index\n lineIndex = undefined\n while (tailIndex--) {\n const tailEvent = events[tailIndex]\n if (\n tailEvent[1].type === 'lineEnding' ||\n tailEvent[1].type === 'lineEndingBlank'\n ) {\n if (tailEvent[0] === 'exit') continue\n if (lineIndex) {\n events[lineIndex][1].type = 'lineEndingBlank'\n listSpread = true\n }\n tailEvent[1].type = 'lineEnding'\n lineIndex = tailIndex\n } else if (\n tailEvent[1].type === 'linePrefix' ||\n tailEvent[1].type === 'blockQuotePrefix' ||\n tailEvent[1].type === 'blockQuotePrefixWhitespace' ||\n tailEvent[1].type === 'blockQuoteMarker' ||\n tailEvent[1].type === 'listItemIndent'\n ) {\n // Empty\n } else {\n break\n }\n }\n if (\n firstBlankLineIndex &&\n (!lineIndex || firstBlankLineIndex < lineIndex)\n ) {\n listItem._spread = true\n }\n\n // Fix position.\n listItem.end = Object.assign(\n {},\n lineIndex ? events[lineIndex][1].start : event[1].end\n )\n events.splice(lineIndex || index, 0, ['exit', listItem, event[2]])\n index++\n length++\n }\n\n // Create a new list item.\n if (event[1].type === 'listItemPrefix') {\n listItem = {\n type: 'listItem',\n _spread: false,\n start: Object.assign({}, event[1].start),\n // @ts-expect-error: we’ll add `end` in a second.\n end: undefined\n }\n // @ts-expect-error: `listItem` is most definitely defined, TS...\n events.splice(index, 0, ['enter', listItem, event[2]])\n index++\n length++\n firstBlankLineIndex = undefined\n atMarker = true\n }\n }\n }\n events[start][1]._spread = listSpread\n return length\n }\n\n /**\n * Set data.\n *\n * @template {keyof CompileData} Key\n * Field type.\n * @param {Key} key\n * Key of field.\n * @param {CompileData[Key]} [value]\n * New value.\n * @returns {void}\n * Nothing.\n */\n function setData(key, value) {\n data[key] = value\n }\n\n /**\n * Get data.\n *\n * @template {keyof CompileData} Key\n * Field type.\n * @param {Key} key\n * Key of field.\n * @returns {CompileData[Key]}\n * Value.\n */\n function getData(key) {\n return data[key]\n }\n\n /**\n * Create an opener handle.\n *\n * @param {(token: Token) => Node} create\n * Create a node.\n * @param {Handle} [and]\n * Optional function to also run.\n * @returns {Handle}\n * Handle.\n */\n function opener(create, and) {\n return open\n\n /**\n * @this {CompileContext}\n * @param {Token} token\n * @returns {void}\n */\n function open(token) {\n enter.call(this, create(token), token)\n if (and) and.call(this, token)\n }\n }\n\n /**\n * @this {CompileContext}\n * @returns {void}\n */\n function buffer() {\n this.stack.push({\n type: 'fragment',\n children: []\n })\n }\n\n /**\n * @template {Node} Kind\n * Node type.\n * @this {CompileContext}\n * Context.\n * @param {Kind} node\n * Node to enter.\n * @param {Token} token\n * Corresponding token.\n * @param {OnEnterError | undefined} [errorHandler]\n * Handle the case where this token is open, but it is closed by something else.\n * @returns {Kind}\n * The given node.\n */\n function enter(node, token, errorHandler) {\n const parent = this.stack[this.stack.length - 1]\n // @ts-expect-error: Assume `Node` can exist as a child of `parent`.\n parent.children.push(node)\n this.stack.push(node)\n this.tokenStack.push([token, errorHandler])\n // @ts-expect-error: `end` will be patched later.\n node.position = {\n start: point(token.start)\n }\n return node\n }\n\n /**\n * Create a closer handle.\n *\n * @param {Handle} [and]\n * Optional function to also run.\n * @returns {Handle}\n * Handle.\n */\n function closer(and) {\n return close\n\n /**\n * @this {CompileContext}\n * @param {Token} token\n * @returns {void}\n */\n function close(token) {\n if (and) and.call(this, token)\n exit.call(this, token)\n }\n }\n\n /**\n * @this {CompileContext}\n * Context.\n * @param {Token} token\n * Corresponding token.\n * @param {OnExitError | undefined} [onExitError]\n * Handle the case where another token is open.\n * @returns {Node}\n * The closed node.\n */\n function exit(token, onExitError) {\n const node = this.stack.pop()\n const open = this.tokenStack.pop()\n if (!open) {\n throw new Error(\n 'Cannot close `' +\n token.type +\n '` (' +\n stringifyPosition({\n start: token.start,\n end: token.end\n }) +\n '): it’s not open'\n )\n } else if (open[0].type !== token.type) {\n if (onExitError) {\n onExitError.call(this, token, open[0])\n } else {\n const handler = open[1] || defaultOnError\n handler.call(this, token, open[0])\n }\n }\n node.position.end = point(token.end)\n return node\n }\n\n /**\n * @this {CompileContext}\n * @returns {string}\n */\n function resume() {\n return toString(this.stack.pop())\n }\n\n //\n // Handlers.\n //\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onenterlistordered() {\n setData('expectingFirstListItemValue', true)\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onenterlistitemvalue(token) {\n if (getData('expectingFirstListItemValue')) {\n const ancestor = this.stack[this.stack.length - 2]\n ancestor.start = Number.parseInt(this.sliceSerialize(token), 10)\n setData('expectingFirstListItemValue')\n }\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitcodefencedfenceinfo() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.lang = data\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitcodefencedfencemeta() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.meta = data\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitcodefencedfence() {\n // Exit if this is the closing fence.\n if (getData('flowCodeInside')) return\n this.buffer()\n setData('flowCodeInside', true)\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitcodefenced() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.value = data.replace(/^(\\r?\\n|\\r)|(\\r?\\n|\\r)$/g, '')\n setData('flowCodeInside')\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitcodeindented() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.value = data.replace(/(\\r?\\n|\\r)$/g, '')\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitdefinitionlabelstring(token) {\n const label = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.label = label\n node.identifier = normalizeIdentifier(\n this.sliceSerialize(token)\n ).toLowerCase()\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitdefinitiontitlestring() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.title = data\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitdefinitiondestinationstring() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.url = data\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitatxheadingsequence(token) {\n const node = this.stack[this.stack.length - 1]\n if (!node.depth) {\n const depth = this.sliceSerialize(token).length\n node.depth = depth\n }\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitsetextheadingtext() {\n setData('setextHeadingSlurpLineEnding', true)\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitsetextheadinglinesequence(token) {\n const node = this.stack[this.stack.length - 1]\n node.depth = this.sliceSerialize(token).charCodeAt(0) === 61 ? 1 : 2\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitsetextheading() {\n setData('setextHeadingSlurpLineEnding')\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onenterdata(token) {\n const node = this.stack[this.stack.length - 1]\n let tail = node.children[node.children.length - 1]\n if (!tail || tail.type !== 'text') {\n // Add a new text node.\n tail = text()\n // @ts-expect-error: we’ll add `end` later.\n tail.position = {\n start: point(token.start)\n }\n // @ts-expect-error: Assume `parent` accepts `text`.\n node.children.push(tail)\n }\n this.stack.push(tail)\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitdata(token) {\n const tail = this.stack.pop()\n tail.value += this.sliceSerialize(token)\n tail.position.end = point(token.end)\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitlineending(token) {\n const context = this.stack[this.stack.length - 1]\n // If we’re at a hard break, include the line ending in there.\n if (getData('atHardBreak')) {\n const tail = context.children[context.children.length - 1]\n tail.position.end = point(token.end)\n setData('atHardBreak')\n return\n }\n if (\n !getData('setextHeadingSlurpLineEnding') &&\n config.canContainEols.includes(context.type)\n ) {\n onenterdata.call(this, token)\n onexitdata.call(this, token)\n }\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexithardbreak() {\n setData('atHardBreak', true)\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexithtmlflow() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.value = data\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexithtmltext() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.value = data\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitcodetext() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.value = data\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitlink() {\n const node = this.stack[this.stack.length - 1]\n // Note: there are also `identifier` and `label` fields on this link node!\n // These are used / cleaned here.\n // To do: clean.\n if (getData('inReference')) {\n /** @type {ReferenceType} */\n const referenceType = getData('referenceType') || 'shortcut'\n node.type += 'Reference'\n // @ts-expect-error: mutate.\n node.referenceType = referenceType\n // @ts-expect-error: mutate.\n delete node.url\n delete node.title\n } else {\n // @ts-expect-error: mutate.\n delete node.identifier\n // @ts-expect-error: mutate.\n delete node.label\n }\n setData('referenceType')\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitimage() {\n const node = this.stack[this.stack.length - 1]\n // Note: there are also `identifier` and `label` fields on this link node!\n // These are used / cleaned here.\n // To do: clean.\n if (getData('inReference')) {\n /** @type {ReferenceType} */\n const referenceType = getData('referenceType') || 'shortcut'\n node.type += 'Reference'\n // @ts-expect-error: mutate.\n node.referenceType = referenceType\n // @ts-expect-error: mutate.\n delete node.url\n delete node.title\n } else {\n // @ts-expect-error: mutate.\n delete node.identifier\n // @ts-expect-error: mutate.\n delete node.label\n }\n setData('referenceType')\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitlabeltext(token) {\n const string = this.sliceSerialize(token)\n const ancestor = this.stack[this.stack.length - 2]\n // @ts-expect-error: stash this on the node, as it might become a reference\n // later.\n ancestor.label = decodeString(string)\n // @ts-expect-error: same as above.\n ancestor.identifier = normalizeIdentifier(string).toLowerCase()\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitlabel() {\n const fragment = this.stack[this.stack.length - 1]\n const value = this.resume()\n const node = this.stack[this.stack.length - 1]\n // Assume a reference.\n setData('inReference', true)\n if (node.type === 'link') {\n /** @type {Array} */\n // @ts-expect-error: Assume static phrasing content.\n const children = fragment.children\n node.children = children\n } else {\n node.alt = value\n }\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitresourcedestinationstring() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.url = data\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitresourcetitlestring() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.title = data\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitresource() {\n setData('inReference')\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onenterreference() {\n setData('referenceType', 'collapsed')\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitreferencestring(token) {\n const label = this.resume()\n const node = this.stack[this.stack.length - 1]\n // @ts-expect-error: stash this on the node, as it might become a reference\n // later.\n node.label = label\n // @ts-expect-error: same as above.\n node.identifier = normalizeIdentifier(\n this.sliceSerialize(token)\n ).toLowerCase()\n setData('referenceType', 'full')\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitcharacterreferencemarker(token) {\n setData('characterReferenceType', token.type)\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitcharacterreferencevalue(token) {\n const data = this.sliceSerialize(token)\n const type = getData('characterReferenceType')\n /** @type {string} */\n let value\n if (type) {\n value = decodeNumericCharacterReference(\n data,\n type === 'characterReferenceMarkerNumeric' ? 10 : 16\n )\n setData('characterReferenceType')\n } else {\n const result = decodeNamedCharacterReference(data)\n value = result\n }\n const tail = this.stack.pop()\n tail.value += value\n tail.position.end = point(token.end)\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitautolinkprotocol(token) {\n onexitdata.call(this, token)\n const node = this.stack[this.stack.length - 1]\n node.url = this.sliceSerialize(token)\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitautolinkemail(token) {\n onexitdata.call(this, token)\n const node = this.stack[this.stack.length - 1]\n node.url = 'mailto:' + this.sliceSerialize(token)\n }\n\n //\n // Creaters.\n //\n\n /** @returns {Blockquote} */\n function blockQuote() {\n return {\n type: 'blockquote',\n children: []\n }\n }\n\n /** @returns {Code} */\n function codeFlow() {\n return {\n type: 'code',\n lang: null,\n meta: null,\n value: ''\n }\n }\n\n /** @returns {InlineCode} */\n function codeText() {\n return {\n type: 'inlineCode',\n value: ''\n }\n }\n\n /** @returns {Definition} */\n function definition() {\n return {\n type: 'definition',\n identifier: '',\n label: null,\n title: null,\n url: ''\n }\n }\n\n /** @returns {Emphasis} */\n function emphasis() {\n return {\n type: 'emphasis',\n children: []\n }\n }\n\n /** @returns {Heading} */\n function heading() {\n // @ts-expect-error `depth` will be set later.\n return {\n type: 'heading',\n depth: undefined,\n children: []\n }\n }\n\n /** @returns {Break} */\n function hardBreak() {\n return {\n type: 'break'\n }\n }\n\n /** @returns {HTML} */\n function html() {\n return {\n type: 'html',\n value: ''\n }\n }\n\n /** @returns {Image} */\n function image() {\n return {\n type: 'image',\n title: null,\n url: '',\n alt: null\n }\n }\n\n /** @returns {Link} */\n function link() {\n return {\n type: 'link',\n title: null,\n url: '',\n children: []\n }\n }\n\n /**\n * @param {Token} token\n * @returns {List}\n */\n function list(token) {\n return {\n type: 'list',\n ordered: token.type === 'listOrdered',\n start: null,\n spread: token._spread,\n children: []\n }\n }\n\n /**\n * @param {Token} token\n * @returns {ListItem}\n */\n function listItem(token) {\n return {\n type: 'listItem',\n spread: token._spread,\n checked: null,\n children: []\n }\n }\n\n /** @returns {Paragraph} */\n function paragraph() {\n return {\n type: 'paragraph',\n children: []\n }\n }\n\n /** @returns {Strong} */\n function strong() {\n return {\n type: 'strong',\n children: []\n }\n }\n\n /** @returns {Text} */\n function text() {\n return {\n type: 'text',\n value: ''\n }\n }\n\n /** @returns {ThematicBreak} */\n function thematicBreak() {\n return {\n type: 'thematicBreak'\n }\n }\n}\n\n/**\n * Copy a point-like value.\n *\n * @param {Point} d\n * Point-like value.\n * @returns {Point}\n * unist point.\n */\nfunction point(d) {\n return {\n line: d.line,\n column: d.column,\n offset: d.offset\n }\n}\n\n/**\n * @param {Config} combined\n * @param {Array>} extensions\n * @returns {void}\n */\nfunction configure(combined, extensions) {\n let index = -1\n while (++index < extensions.length) {\n const value = extensions[index]\n if (Array.isArray(value)) {\n configure(combined, value)\n } else {\n extension(combined, value)\n }\n }\n}\n\n/**\n * @param {Config} combined\n * @param {Extension} extension\n * @returns {void}\n */\nfunction extension(combined, extension) {\n /** @type {keyof Extension} */\n let key\n for (key in extension) {\n if (own.call(extension, key)) {\n if (key === 'canContainEols') {\n const right = extension[key]\n if (right) {\n combined[key].push(...right)\n }\n } else if (key === 'transforms') {\n const right = extension[key]\n if (right) {\n combined[key].push(...right)\n }\n } else if (key === 'enter' || key === 'exit') {\n const right = extension[key]\n if (right) {\n Object.assign(combined[key], right)\n }\n }\n }\n }\n}\n\n/** @type {OnEnterError} */\nfunction defaultOnError(left, right) {\n if (left) {\n throw new Error(\n 'Cannot close `' +\n left.type +\n '` (' +\n stringifyPosition({\n start: left.start,\n end: left.end\n }) +\n '): a different token (`' +\n right.type +\n '`, ' +\n stringifyPosition({\n start: right.start,\n end: right.end\n }) +\n ') is open'\n )\n } else {\n throw new Error(\n 'Cannot close document, a token (`' +\n right.type +\n '`, ' +\n stringifyPosition({\n start: right.start,\n end: right.end\n }) +\n ') is still open'\n )\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Event} Event\n */\n\nimport {subtokenize} from 'micromark-util-subtokenize'\n\n/**\n * @param {Array} events\n * @returns {Array}\n */\nexport function postprocess(events) {\n while (!subtokenize(events)) {\n // Empty\n }\n return events\n}\n","/**\n * @typedef {import('mdast').Root} Root\n * @typedef {import('mdast-util-from-markdown').Options} Options\n */\n\nimport {fromMarkdown} from 'mdast-util-from-markdown'\n\n/**\n * @this {import('unified').Processor}\n * @type {import('unified').Plugin<[Options?] | void[], string, Root>}\n */\nexport default function remarkParse(options) {\n /** @type {import('unified').ParserFunction} */\n const parser = (doc) => {\n // Assume options.\n const settings = /** @type {Options} */ (this.data('settings'))\n\n return fromMarkdown(\n doc,\n Object.assign({}, settings, options, {\n // Note: these options are not in the readme.\n // The goal is for them to be set by plugins on `data` instead of being\n // passed by users.\n extensions: this.data('micromarkExtensions') || [],\n mdastExtensions: this.data('fromMarkdownExtensions') || []\n })\n )\n }\n\n Object.assign(this, {Parser: parser})\n}\n","import {asciiAlphanumeric} from 'micromark-util-character'\nimport {encode} from 'micromark-util-encode'\n/**\n * Make a value safe for injection as a URL.\n *\n * This encodes unsafe characters with percent-encoding and skips already\n * encoded sequences (see `normalizeUri`).\n * Further unsafe characters are encoded as character references (see\n * `micromark-util-encode`).\n *\n * A regex of allowed protocols can be given, in which case the URL is\n * sanitized.\n * For example, `/^(https?|ircs?|mailto|xmpp)$/i` can be used for `a[href]`, or\n * `/^https?$/i` for `img[src]` (this is what `github.com` allows).\n * If the URL includes an unknown protocol (one not matched by `protocol`, such\n * as a dangerous example, `javascript:`), the value is ignored.\n *\n * @param {string | undefined} url\n * URI to sanitize.\n * @param {RegExp | null | undefined} [protocol]\n * Allowed protocols.\n * @returns {string}\n * Sanitized URI.\n */\nexport function sanitizeUri(url, protocol) {\n const value = encode(normalizeUri(url || ''))\n if (!protocol) {\n return value\n }\n const colon = value.indexOf(':')\n const questionMark = value.indexOf('?')\n const numberSign = value.indexOf('#')\n const slash = value.indexOf('/')\n if (\n // If there is no protocol, it’s relative.\n colon < 0 ||\n // If the first colon is after a `?`, `#`, or `/`, it’s not a protocol.\n (slash > -1 && colon > slash) ||\n (questionMark > -1 && colon > questionMark) ||\n (numberSign > -1 && colon > numberSign) ||\n // It is a protocol, it should be allowed.\n protocol.test(value.slice(0, colon))\n ) {\n return value\n }\n return ''\n}\n\n/**\n * Normalize a URL.\n *\n * Encode unsafe characters with percent-encoding, skipping already encoded\n * sequences.\n *\n * @param {string} value\n * URI to normalize.\n * @returns {string}\n * Normalized URI.\n */\nexport function normalizeUri(value) {\n /** @type {Array} */\n const result = []\n let index = -1\n let start = 0\n let skip = 0\n while (++index < value.length) {\n const code = value.charCodeAt(index)\n /** @type {string} */\n let replace = ''\n\n // A correct percent encoded value.\n if (\n code === 37 &&\n asciiAlphanumeric(value.charCodeAt(index + 1)) &&\n asciiAlphanumeric(value.charCodeAt(index + 2))\n ) {\n skip = 2\n }\n // ASCII.\n else if (code < 128) {\n if (!/[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(code))) {\n replace = String.fromCharCode(code)\n }\n }\n // Astral.\n else if (code > 55295 && code < 57344) {\n const next = value.charCodeAt(index + 1)\n\n // A correct surrogate pair.\n if (code < 56320 && next > 56319 && next < 57344) {\n replace = String.fromCharCode(code, next)\n skip = 1\n }\n // Lone surrogate.\n else {\n replace = '\\uFFFD'\n }\n }\n // Unicode.\n else {\n replace = String.fromCharCode(code)\n }\n if (replace) {\n result.push(value.slice(start, index), encodeURIComponent(replace))\n start = index + skip + 1\n replace = ''\n }\n if (skip) {\n index += skip\n skip = 0\n }\n }\n return result.join('') + value.slice(start)\n}\n","/**\n * @typedef {import('unist').Node} Node\n * @typedef {import('unist').Parent} Parent\n */\n\n/**\n * @typedef {Record} Props\n * @typedef {null | undefined | string | Props | TestFunctionAnything | Array} Test\n * Check for an arbitrary node, unaware of TypeScript inferral.\n *\n * @callback TestFunctionAnything\n * Check if a node passes a test, unaware of TypeScript inferral.\n * @param {unknown} this\n * The given context.\n * @param {Node} node\n * A node.\n * @param {number | null | undefined} [index]\n * The node’s position in its parent.\n * @param {Parent | null | undefined} [parent]\n * The node’s parent.\n * @returns {boolean | void}\n * Whether this node passes the test.\n */\n\n/**\n * @template {Node} Kind\n * Node type.\n * @typedef {Kind['type'] | Partial | TestFunctionPredicate | Array | TestFunctionPredicate>} PredicateTest\n * Check for a node that can be inferred by TypeScript.\n */\n\n/**\n * Check if a node passes a certain test.\n *\n * @template {Node} Kind\n * Node type.\n * @callback TestFunctionPredicate\n * Complex test function for a node that can be inferred by TypeScript.\n * @param {Node} node\n * A node.\n * @param {number | null | undefined} [index]\n * The node’s position in its parent.\n * @param {Parent | null | undefined} [parent]\n * The node’s parent.\n * @returns {node is Kind}\n * Whether this node passes the test.\n */\n\n/**\n * @callback AssertAnything\n * Check that an arbitrary value is a node, unaware of TypeScript inferral.\n * @param {unknown} [node]\n * Anything (typically a node).\n * @param {number | null | undefined} [index]\n * The node’s position in its parent.\n * @param {Parent | null | undefined} [parent]\n * The node’s parent.\n * @returns {boolean}\n * Whether this is a node and passes a test.\n */\n\n/**\n * Check if a node is a node and passes a certain node test.\n *\n * @template {Node} Kind\n * Node type.\n * @callback AssertPredicate\n * Check that an arbitrary value is a specific node, aware of TypeScript.\n * @param {unknown} [node]\n * Anything (typically a node).\n * @param {number | null | undefined} [index]\n * The node’s position in its parent.\n * @param {Parent | null | undefined} [parent]\n * The node’s parent.\n * @returns {node is Kind}\n * Whether this is a node and passes a test.\n */\n\n/**\n * Check if `node` is a `Node` and whether it passes the given test.\n *\n * @param node\n * Thing to check, typically `Node`.\n * @param test\n * A check for a specific node.\n * @param index\n * The node’s position in its parent.\n * @param parent\n * The node’s parent.\n * @returns\n * Whether `node` is a node and passes a test.\n */\nexport const is =\n /**\n * @type {(\n * (() => false) &\n * ((node: unknown, test: PredicateTest, index: number, parent: Parent, context?: unknown) => node is Kind) &\n * ((node: unknown, test: PredicateTest, index?: null | undefined, parent?: null | undefined, context?: unknown) => node is Kind) &\n * ((node: unknown, test: Test, index: number, parent: Parent, context?: unknown) => boolean) &\n * ((node: unknown, test?: Test, index?: null | undefined, parent?: null | undefined, context?: unknown) => boolean)\n * )}\n */\n (\n /**\n * @param {unknown} [node]\n * @param {Test} [test]\n * @param {number | null | undefined} [index]\n * @param {Parent | null | undefined} [parent]\n * @param {unknown} [context]\n * @returns {boolean}\n */\n // eslint-disable-next-line max-params\n function is(node, test, index, parent, context) {\n const check = convert(test)\n\n if (\n index !== undefined &&\n index !== null &&\n (typeof index !== 'number' ||\n index < 0 ||\n index === Number.POSITIVE_INFINITY)\n ) {\n throw new Error('Expected positive finite index')\n }\n\n if (\n parent !== undefined &&\n parent !== null &&\n (!is(parent) || !parent.children)\n ) {\n throw new Error('Expected parent node')\n }\n\n if (\n (parent === undefined || parent === null) !==\n (index === undefined || index === null)\n ) {\n throw new Error('Expected both parent and index')\n }\n\n // @ts-expect-error Looks like a node.\n return node && node.type && typeof node.type === 'string'\n ? Boolean(check.call(context, node, index, parent))\n : false\n }\n )\n\n/**\n * Generate an assertion from a test.\n *\n * Useful if you’re going to test many nodes, for example when creating a\n * utility where something else passes a compatible test.\n *\n * The created function is a bit faster because it expects valid input only:\n * a `node`, `index`, and `parent`.\n *\n * @param test\n * * when nullish, checks if `node` is a `Node`.\n * * when `string`, works like passing `(node) => node.type === test`.\n * * when `function` checks if function passed the node is true.\n * * when `object`, checks that all keys in test are in node, and that they have (strictly) equal values.\n * * when `array`, checks if any one of the subtests pass.\n * @returns\n * An assertion.\n */\nexport const convert =\n /**\n * @type {(\n * ((test: PredicateTest) => AssertPredicate) &\n * ((test?: Test) => AssertAnything)\n * )}\n */\n (\n /**\n * @param {Test} [test]\n * @returns {AssertAnything}\n */\n function (test) {\n if (test === undefined || test === null) {\n return ok\n }\n\n if (typeof test === 'string') {\n return typeFactory(test)\n }\n\n if (typeof test === 'object') {\n return Array.isArray(test) ? anyFactory(test) : propsFactory(test)\n }\n\n if (typeof test === 'function') {\n return castFactory(test)\n }\n\n throw new Error('Expected function, string, or object as test')\n }\n )\n\n/**\n * @param {Array} tests\n * @returns {AssertAnything}\n */\nfunction anyFactory(tests) {\n /** @type {Array} */\n const checks = []\n let index = -1\n\n while (++index < tests.length) {\n checks[index] = convert(tests[index])\n }\n\n return castFactory(any)\n\n /**\n * @this {unknown}\n * @param {Array} parameters\n * @returns {boolean}\n */\n function any(...parameters) {\n let index = -1\n\n while (++index < checks.length) {\n if (checks[index].call(this, ...parameters)) return true\n }\n\n return false\n }\n}\n\n/**\n * Turn an object into a test for a node with a certain fields.\n *\n * @param {Props} check\n * @returns {AssertAnything}\n */\nfunction propsFactory(check) {\n return castFactory(all)\n\n /**\n * @param {Node} node\n * @returns {boolean}\n */\n function all(node) {\n /** @type {string} */\n let key\n\n for (key in check) {\n // @ts-expect-error: hush, it sure works as an index.\n if (node[key] !== check[key]) return false\n }\n\n return true\n }\n}\n\n/**\n * Turn a string into a test for a node with a certain type.\n *\n * @param {string} check\n * @returns {AssertAnything}\n */\nfunction typeFactory(check) {\n return castFactory(type)\n\n /**\n * @param {Node} node\n */\n function type(node) {\n return node && node.type === check\n }\n}\n\n/**\n * Turn a custom test into a test for a node that passes that test.\n *\n * @param {TestFunctionAnything} check\n * @returns {AssertAnything}\n */\nfunction castFactory(check) {\n return assertion\n\n /**\n * @this {unknown}\n * @param {unknown} node\n * @param {Array} parameters\n * @returns {boolean}\n */\n function assertion(node, ...parameters) {\n return Boolean(\n node &&\n typeof node === 'object' &&\n 'type' in node &&\n // @ts-expect-error: fine.\n Boolean(check.call(this, node, ...parameters))\n )\n }\n}\n\nfunction ok() {\n return true\n}\n","/**\n * @typedef {import('unist').Node} Node\n * @typedef {import('unist').Parent} Parent\n * @typedef {import('unist-util-is').Test} Test\n */\n\n/**\n * @typedef {boolean | 'skip'} Action\n * Union of the action types.\n *\n * @typedef {number} Index\n * Move to the sibling at `index` next (after node itself is completely\n * traversed).\n *\n * Useful if mutating the tree, such as removing the node the visitor is\n * currently on, or any of its previous siblings.\n * Results less than 0 or greater than or equal to `children.length` stop\n * traversing the parent.\n *\n * @typedef {[(Action | null | undefined | void)?, (Index | null | undefined)?]} ActionTuple\n * List with one or two values, the first an action, the second an index.\n *\n * @typedef {Action | ActionTuple | Index | null | undefined | void} VisitorResult\n * Any value that can be returned from a visitor.\n */\n\n/**\n * @template {Node} [Visited=Node]\n * Visited node type.\n * @template {Parent} [Ancestor=Parent]\n * Ancestor type.\n * @callback Visitor\n * Handle a node (matching `test`, if given).\n *\n * Visitors are free to transform `node`.\n * They can also transform the parent of node (the last of `ancestors`).\n *\n * Replacing `node` itself, if `SKIP` is not returned, still causes its\n * descendants to be walked (which is a bug).\n *\n * When adding or removing previous siblings of `node` (or next siblings, in\n * case of reverse), the `Visitor` should return a new `Index` to specify the\n * sibling to traverse after `node` is traversed.\n * Adding or removing next siblings of `node` (or previous siblings, in case\n * of reverse) is handled as expected without needing to return a new `Index`.\n *\n * Removing the children property of an ancestor still results in them being\n * traversed.\n * @param {Visited} node\n * Found node.\n * @param {Array} ancestors\n * Ancestors of `node`.\n * @returns {VisitorResult}\n * What to do next.\n *\n * An `Index` is treated as a tuple of `[CONTINUE, Index]`.\n * An `Action` is treated as a tuple of `[Action]`.\n *\n * Passing a tuple back only makes sense if the `Action` is `SKIP`.\n * When the `Action` is `EXIT`, that action can be returned.\n * When the `Action` is `CONTINUE`, `Index` can be returned.\n */\n\n/**\n * @template {Node} [Tree=Node]\n * Tree type.\n * @template {Test} [Check=string]\n * Test type.\n * @typedef {Visitor, Check>, Extract, Parent>>} BuildVisitor\n * Build a typed `Visitor` function from a tree and a test.\n *\n * It will infer which values are passed as `node` and which as `parents`.\n */\n\nimport {convert} from 'unist-util-is'\nimport {color} from './color.js'\n\n/**\n * Continue traversing as normal.\n */\nexport const CONTINUE = true\n\n/**\n * Stop traversing immediately.\n */\nexport const EXIT = false\n\n/**\n * Do not traverse this node’s children.\n */\nexport const SKIP = 'skip'\n\n/**\n * Visit nodes, with ancestral information.\n *\n * This algorithm performs *depth-first* *tree traversal* in *preorder*\n * (**NLR**) or if `reverse` is given, in *reverse preorder* (**NRL**).\n *\n * You can choose for which nodes `visitor` is called by passing a `test`.\n * For complex tests, you should test yourself in `visitor`, as it will be\n * faster and will have improved type information.\n *\n * Walking the tree is an intensive task.\n * Make use of the return values of the visitor when possible.\n * Instead of walking a tree multiple times, walk it once, use `unist-util-is`\n * to check if a node matches, and then perform different operations.\n *\n * You can change the tree.\n * See `Visitor` for more info.\n *\n * @param tree\n * Tree to traverse.\n * @param test\n * `unist-util-is`-compatible test\n * @param visitor\n * Handle each node.\n * @param reverse\n * Traverse in reverse preorder (NRL) instead of the default preorder (NLR).\n * @returns\n * Nothing.\n */\nexport const visitParents =\n /**\n * @type {(\n * ((tree: Tree, test: Check, visitor: BuildVisitor, reverse?: boolean | null | undefined) => void) &\n * ((tree: Tree, visitor: BuildVisitor, reverse?: boolean | null | undefined) => void)\n * )}\n */\n (\n /**\n * @param {Node} tree\n * @param {Test} test\n * @param {Visitor} visitor\n * @param {boolean | null | undefined} [reverse]\n * @returns {void}\n */\n function (tree, test, visitor, reverse) {\n if (typeof test === 'function' && typeof visitor !== 'function') {\n reverse = visitor\n // @ts-expect-error no visitor given, so `visitor` is test.\n visitor = test\n test = null\n }\n\n const is = convert(test)\n const step = reverse ? -1 : 1\n\n factory(tree, undefined, [])()\n\n /**\n * @param {Node} node\n * @param {number | undefined} index\n * @param {Array} parents\n */\n function factory(node, index, parents) {\n /** @type {Record} */\n // @ts-expect-error: hush\n const value = node && typeof node === 'object' ? node : {}\n\n if (typeof value.type === 'string') {\n const name =\n // `hast`\n typeof value.tagName === 'string'\n ? value.tagName\n : // `xast`\n typeof value.name === 'string'\n ? value.name\n : undefined\n\n Object.defineProperty(visit, 'name', {\n value:\n 'node (' + color(node.type + (name ? '<' + name + '>' : '')) + ')'\n })\n }\n\n return visit\n\n function visit() {\n /** @type {ActionTuple} */\n let result = []\n /** @type {ActionTuple} */\n let subresult\n /** @type {number} */\n let offset\n /** @type {Array} */\n let grandparents\n\n if (!test || is(node, index, parents[parents.length - 1] || null)) {\n result = toResult(visitor(node, parents))\n\n if (result[0] === EXIT) {\n return result\n }\n }\n\n // @ts-expect-error looks like a parent.\n if (node.children && result[0] !== SKIP) {\n // @ts-expect-error looks like a parent.\n offset = (reverse ? node.children.length : -1) + step\n // @ts-expect-error looks like a parent.\n grandparents = parents.concat(node)\n\n // @ts-expect-error looks like a parent.\n while (offset > -1 && offset < node.children.length) {\n // @ts-expect-error looks like a parent.\n subresult = factory(node.children[offset], offset, grandparents)()\n\n if (subresult[0] === EXIT) {\n return subresult\n }\n\n offset =\n typeof subresult[1] === 'number' ? subresult[1] : offset + step\n }\n }\n\n return result\n }\n }\n }\n )\n\n/**\n * Turn a return value into a clean result.\n *\n * @param {VisitorResult} value\n * Valid return values from visitors.\n * @returns {ActionTuple}\n * Clean result.\n */\nfunction toResult(value) {\n if (Array.isArray(value)) {\n return value\n }\n\n if (typeof value === 'number') {\n return [CONTINUE, value]\n }\n\n return [value]\n}\n","/**\n * @typedef {import('unist').Node} Node\n * @typedef {import('unist').Parent} Parent\n * @typedef {import('unist-util-is').Test} Test\n * @typedef {import('unist-util-visit-parents').VisitorResult} VisitorResult\n */\n\n/**\n * Check if `Child` can be a child of `Ancestor`.\n *\n * Returns the ancestor when `Child` can be a child of `Ancestor`, or returns\n * `never`.\n *\n * @template {Node} Ancestor\n * Node type.\n * @template {Node} Child\n * Node type.\n * @typedef {(\n * Ancestor extends Parent\n * ? Child extends Ancestor['children'][number]\n * ? Ancestor\n * : never\n * : never\n * )} ParentsOf\n */\n\n/**\n * @template {Node} [Visited=Node]\n * Visited node type.\n * @template {Parent} [Ancestor=Parent]\n * Ancestor type.\n * @callback Visitor\n * Handle a node (matching `test`, if given).\n *\n * Visitors are free to transform `node`.\n * They can also transform `parent`.\n *\n * Replacing `node` itself, if `SKIP` is not returned, still causes its\n * descendants to be walked (which is a bug).\n *\n * When adding or removing previous siblings of `node` (or next siblings, in\n * case of reverse), the `Visitor` should return a new `Index` to specify the\n * sibling to traverse after `node` is traversed.\n * Adding or removing next siblings of `node` (or previous siblings, in case\n * of reverse) is handled as expected without needing to return a new `Index`.\n *\n * Removing the children property of `parent` still results in them being\n * traversed.\n * @param {Visited} node\n * Found node.\n * @param {Visited extends Node ? number | null : never} index\n * Index of `node` in `parent`.\n * @param {Ancestor extends Node ? Ancestor | null : never} parent\n * Parent of `node`.\n * @returns {VisitorResult}\n * What to do next.\n *\n * An `Index` is treated as a tuple of `[CONTINUE, Index]`.\n * An `Action` is treated as a tuple of `[Action]`.\n *\n * Passing a tuple back only makes sense if the `Action` is `SKIP`.\n * When the `Action` is `EXIT`, that action can be returned.\n * When the `Action` is `CONTINUE`, `Index` can be returned.\n */\n\n/**\n * Build a typed `Visitor` function from a node and all possible parents.\n *\n * It will infer which values are passed as `node` and which as `parent`.\n *\n * @template {Node} Visited\n * Node type.\n * @template {Parent} Ancestor\n * Parent type.\n * @typedef {Visitor>} BuildVisitorFromMatch\n */\n\n/**\n * Build a typed `Visitor` function from a list of descendants and a test.\n *\n * It will infer which values are passed as `node` and which as `parent`.\n *\n * @template {Node} Descendant\n * Node type.\n * @template {Test} Check\n * Test type.\n * @typedef {(\n * BuildVisitorFromMatch<\n * import('unist-util-visit-parents/complex-types.js').Matches,\n * Extract\n * >\n * )} BuildVisitorFromDescendants\n */\n\n/**\n * Build a typed `Visitor` function from a tree and a test.\n *\n * It will infer which values are passed as `node` and which as `parent`.\n *\n * @template {Node} [Tree=Node]\n * Node type.\n * @template {Test} [Check=string]\n * Test type.\n * @typedef {(\n * BuildVisitorFromDescendants<\n * import('unist-util-visit-parents/complex-types.js').InclusiveDescendant,\n * Check\n * >\n * )} BuildVisitor\n */\n\nimport {visitParents} from 'unist-util-visit-parents'\n\n/**\n * Visit nodes.\n *\n * This algorithm performs *depth-first* *tree traversal* in *preorder*\n * (**NLR**) or if `reverse` is given, in *reverse preorder* (**NRL**).\n *\n * You can choose for which nodes `visitor` is called by passing a `test`.\n * For complex tests, you should test yourself in `visitor`, as it will be\n * faster and will have improved type information.\n *\n * Walking the tree is an intensive task.\n * Make use of the return values of the visitor when possible.\n * Instead of walking a tree multiple times, walk it once, use `unist-util-is`\n * to check if a node matches, and then perform different operations.\n *\n * You can change the tree.\n * See `Visitor` for more info.\n *\n * @param tree\n * Tree to traverse.\n * @param test\n * `unist-util-is`-compatible test\n * @param visitor\n * Handle each node.\n * @param reverse\n * Traverse in reverse preorder (NRL) instead of the default preorder (NLR).\n * @returns\n * Nothing.\n */\nexport const visit =\n /**\n * @type {(\n * ((tree: Tree, test: Check, visitor: BuildVisitor, reverse?: boolean | null | undefined) => void) &\n * ((tree: Tree, visitor: BuildVisitor, reverse?: boolean | null | undefined) => void)\n * )}\n */\n (\n /**\n * @param {Node} tree\n * @param {Test} test\n * @param {Visitor} visitor\n * @param {boolean | null | undefined} [reverse]\n * @returns {void}\n */\n function (tree, test, visitor, reverse) {\n if (typeof test === 'function' && typeof visitor !== 'function') {\n reverse = visitor\n visitor = test\n test = null\n }\n\n visitParents(tree, test, overload, reverse)\n\n /**\n * @param {Node} node\n * @param {Array} parents\n */\n function overload(node, parents) {\n const parent = parents[parents.length - 1]\n return visitor(\n node,\n parent ? parent.children.indexOf(node) : null,\n parent\n )\n }\n }\n )\n\nexport {CONTINUE, EXIT, SKIP} from 'unist-util-visit-parents'\n","/**\n * @typedef {import('unist').Position} Position\n * @typedef {import('unist').Node} Node\n * @typedef {import('unist').Point} Point\n */\n\n/**\n * @typedef NodeLike\n * @property {string} type\n * @property {PositionLike | null | undefined} [position]\n *\n * @typedef PositionLike\n * @property {PointLike | null | undefined} [start]\n * @property {PointLike | null | undefined} [end]\n *\n * @typedef PointLike\n * @property {number | null | undefined} [line]\n * @property {number | null | undefined} [column]\n * @property {number | null | undefined} [offset]\n */\n\n/**\n * Get the starting point of `node`.\n *\n * @param node\n * Node.\n * @returns\n * Point.\n */\nexport const pointStart = point('start')\n\n/**\n * Get the ending point of `node`.\n *\n * @param node\n * Node.\n * @returns\n * Point.\n */\nexport const pointEnd = point('end')\n\n/**\n * Get the positional info of `node`.\n *\n * @param {NodeLike | Node | null | undefined} [node]\n * Node.\n * @returns {Position}\n * Position.\n */\nexport function position(node) {\n return {start: pointStart(node), end: pointEnd(node)}\n}\n\n/**\n * Get the positional info of `node`.\n *\n * @param {'start' | 'end'} type\n * Side.\n * @returns\n * Getter.\n */\nfunction point(type) {\n return point\n\n /**\n * Get the point info of `node` at a bound side.\n *\n * @param {NodeLike | Node | null | undefined} [node]\n * @returns {Point}\n */\n function point(node) {\n const point = (node && node.position && node.position[type]) || {}\n\n // To do: next major: don’t return points when invalid.\n return {\n // @ts-expect-error: in practice, null is allowed.\n line: point.line || null,\n // @ts-expect-error: in practice, null is allowed.\n column: point.column || null,\n // @ts-expect-error: in practice, null is allowed.\n offset: point.offset > -1 ? point.offset : null\n }\n }\n}\n","/**\n * @typedef {import('mdast').Root} Root\n * @typedef {import('mdast').Content} Content\n * @typedef {import('mdast').Definition} Definition\n */\n\n/**\n * @typedef {Root | Content} Node\n *\n * @callback GetDefinition\n * Get a definition by identifier.\n * @param {string | null | undefined} [identifier]\n * Identifier of definition.\n * @returns {Definition | null}\n * Definition corresponding to `identifier` or `null`.\n */\n\nimport {visit} from 'unist-util-visit'\n\nconst own = {}.hasOwnProperty\n\n/**\n * Find definitions in `tree`.\n *\n * Uses CommonMark precedence, which means that earlier definitions are\n * preferred over duplicate later definitions.\n *\n * @param {Node} tree\n * Tree to check.\n * @returns {GetDefinition}\n * Getter.\n */\nexport function definitions(tree) {\n /** @type {Record} */\n const cache = Object.create(null)\n\n if (!tree || !tree.type) {\n throw new Error('mdast-util-definitions expected node')\n }\n\n visit(tree, 'definition', (definition) => {\n const id = clean(definition.identifier)\n if (id && !own.call(cache, id)) {\n cache[id] = definition\n }\n })\n\n return definition\n\n /** @type {GetDefinition} */\n function definition(identifier) {\n const id = clean(identifier)\n // To do: next major: return `undefined` when not found.\n return id && own.call(cache, id) ? cache[id] : null\n }\n}\n\n/**\n * @param {string | null | undefined} [value]\n * @returns {string}\n */\nfunction clean(value) {\n return String(value || '').toUpperCase()\n}\n","/**\n * @typedef {import('mdast').FootnoteReference} FootnoteReference\n * @typedef {import('hast').Element} Element\n * @typedef {import('../state.js').State} State\n */\n\nimport {normalizeUri} from 'micromark-util-sanitize-uri'\n\n/**\n * Turn an mdast `footnoteReference` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {FootnoteReference} node\n * mdast node.\n * @returns {Element}\n * hast node.\n */\nexport function footnoteReference(state, node) {\n const id = String(node.identifier).toUpperCase()\n const safeId = normalizeUri(id.toLowerCase())\n const index = state.footnoteOrder.indexOf(id)\n /** @type {number} */\n let counter\n\n if (index === -1) {\n state.footnoteOrder.push(id)\n state.footnoteCounts[id] = 1\n counter = state.footnoteOrder.length\n } else {\n state.footnoteCounts[id]++\n counter = index + 1\n }\n\n const reuseCounter = state.footnoteCounts[id]\n\n /** @type {Element} */\n const link = {\n type: 'element',\n tagName: 'a',\n properties: {\n href: '#' + state.clobberPrefix + 'fn-' + safeId,\n id:\n state.clobberPrefix +\n 'fnref-' +\n safeId +\n (reuseCounter > 1 ? '-' + reuseCounter : ''),\n dataFootnoteRef: true,\n ariaDescribedBy: ['footnote-label']\n },\n children: [{type: 'text', value: String(counter)}]\n }\n state.patch(node, link)\n\n /** @type {Element} */\n const sup = {\n type: 'element',\n tagName: 'sup',\n properties: {},\n children: [link]\n }\n state.patch(node, sup)\n return state.applyData(node, sup)\n}\n","/**\n * @typedef {import('hast').ElementContent} ElementContent\n *\n * @typedef {import('mdast').Content} Content\n * @typedef {import('mdast').Reference} Reference\n * @typedef {import('mdast').Root} Root\n *\n * @typedef {import('./state.js').State} State\n */\n\n/**\n * @typedef {Root | Content} Nodes\n * @typedef {Extract} References\n */\n\n// To do: next major: always return array.\n\n/**\n * Return the content of a reference without definition as plain text.\n *\n * @param {State} state\n * Info passed around.\n * @param {References} node\n * Reference node (image, link).\n * @returns {ElementContent | Array}\n * hast content.\n */\nexport function revert(state, node) {\n const subtype = node.referenceType\n let suffix = ']'\n\n if (subtype === 'collapsed') {\n suffix += '[]'\n } else if (subtype === 'full') {\n suffix += '[' + (node.label || node.identifier) + ']'\n }\n\n if (node.type === 'imageReference') {\n return {type: 'text', value: '![' + node.alt + suffix}\n }\n\n const contents = state.all(node)\n const head = contents[0]\n\n if (head && head.type === 'text') {\n head.value = '[' + head.value\n } else {\n contents.unshift({type: 'text', value: '['})\n }\n\n const tail = contents[contents.length - 1]\n\n if (tail && tail.type === 'text') {\n tail.value += suffix\n } else {\n contents.push({type: 'text', value: suffix})\n }\n\n return contents\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').ElementContent} ElementContent\n * @typedef {import('hast').Properties} Properties\n * @typedef {import('mdast').Content} Content\n * @typedef {import('mdast').ListItem} ListItem\n * @typedef {import('mdast').Parent} Parent\n * @typedef {import('mdast').Root} Root\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * @typedef {Root | Content} Nodes\n * @typedef {Extract} Parents\n */\n\n/**\n * Turn an mdast `listItem` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {ListItem} node\n * mdast node.\n * @param {Parents | null | undefined} parent\n * Parent of `node`.\n * @returns {Element}\n * hast node.\n */\nexport function listItem(state, node, parent) {\n const results = state.all(node)\n const loose = parent ? listLoose(parent) : listItemLoose(node)\n /** @type {Properties} */\n const properties = {}\n /** @type {Array} */\n const children = []\n\n if (typeof node.checked === 'boolean') {\n const head = results[0]\n /** @type {Element} */\n let paragraph\n\n if (head && head.type === 'element' && head.tagName === 'p') {\n paragraph = head\n } else {\n paragraph = {type: 'element', tagName: 'p', properties: {}, children: []}\n results.unshift(paragraph)\n }\n\n if (paragraph.children.length > 0) {\n paragraph.children.unshift({type: 'text', value: ' '})\n }\n\n paragraph.children.unshift({\n type: 'element',\n tagName: 'input',\n properties: {type: 'checkbox', checked: node.checked, disabled: true},\n children: []\n })\n\n // According to github-markdown-css, this class hides bullet.\n // See: .\n properties.className = ['task-list-item']\n }\n\n let index = -1\n\n while (++index < results.length) {\n const child = results[index]\n\n // Add eols before nodes, except if this is a loose, first paragraph.\n if (\n loose ||\n index !== 0 ||\n child.type !== 'element' ||\n child.tagName !== 'p'\n ) {\n children.push({type: 'text', value: '\\n'})\n }\n\n if (child.type === 'element' && child.tagName === 'p' && !loose) {\n children.push(...child.children)\n } else {\n children.push(child)\n }\n }\n\n const tail = results[results.length - 1]\n\n // Add a final eol.\n if (tail && (loose || tail.type !== 'element' || tail.tagName !== 'p')) {\n children.push({type: 'text', value: '\\n'})\n }\n\n /** @type {Element} */\n const result = {type: 'element', tagName: 'li', properties, children}\n state.patch(node, result)\n return state.applyData(node, result)\n}\n\n/**\n * @param {Parents} node\n * @return {Boolean}\n */\nfunction listLoose(node) {\n let loose = false\n if (node.type === 'list') {\n loose = node.spread || false\n const children = node.children\n let index = -1\n\n while (!loose && ++index < children.length) {\n loose = listItemLoose(children[index])\n }\n }\n\n return loose\n}\n\n/**\n * @param {ListItem} node\n * @return {Boolean}\n */\nfunction listItemLoose(node) {\n const spread = node.spread\n\n return spread === undefined || spread === null\n ? node.children.length > 1\n : spread\n}\n","const tab = 9 /* `\\t` */\nconst space = 32 /* ` ` */\n\n/**\n * Remove initial and final spaces and tabs at the line breaks in `value`.\n * Does not trim initial and final spaces and tabs of the value itself.\n *\n * @param {string} value\n * Value to trim.\n * @returns {string}\n * Trimmed value.\n */\nexport function trimLines(value) {\n const source = String(value)\n const search = /\\r?\\n|\\r/g\n let match = search.exec(source)\n let last = 0\n /** @type {Array} */\n const lines = []\n\n while (match) {\n lines.push(\n trimLine(source.slice(last, match.index), last > 0, true),\n match[0]\n )\n\n last = match.index + match[0].length\n match = search.exec(source)\n }\n\n lines.push(trimLine(source.slice(last), last > 0, false))\n\n return lines.join('')\n}\n\n/**\n * @param {string} value\n * Line to trim.\n * @param {boolean} start\n * Whether to trim the start of the line.\n * @param {boolean} end\n * Whether to trim the end of the line.\n * @returns {string}\n * Trimmed line.\n */\nfunction trimLine(value, start, end) {\n let startIndex = 0\n let endIndex = value.length\n\n if (start) {\n let code = value.codePointAt(startIndex)\n\n while (code === tab || code === space) {\n startIndex++\n code = value.codePointAt(startIndex)\n }\n }\n\n if (end) {\n let code = value.codePointAt(endIndex - 1)\n\n while (code === tab || code === space) {\n endIndex--\n code = value.codePointAt(endIndex - 1)\n }\n }\n\n return endIndex > startIndex ? value.slice(startIndex, endIndex) : ''\n}\n","import {blockquote} from './blockquote.js'\nimport {hardBreak} from './break.js'\nimport {code} from './code.js'\nimport {strikethrough} from './delete.js'\nimport {emphasis} from './emphasis.js'\nimport {footnoteReference} from './footnote-reference.js'\nimport {footnote} from './footnote.js'\nimport {heading} from './heading.js'\nimport {html} from './html.js'\nimport {imageReference} from './image-reference.js'\nimport {image} from './image.js'\nimport {inlineCode} from './inline-code.js'\nimport {linkReference} from './link-reference.js'\nimport {link} from './link.js'\nimport {listItem} from './list-item.js'\nimport {list} from './list.js'\nimport {paragraph} from './paragraph.js'\nimport {root} from './root.js'\nimport {strong} from './strong.js'\nimport {table} from './table.js'\nimport {tableRow} from './table-row.js'\nimport {tableCell} from './table-cell.js'\nimport {text} from './text.js'\nimport {thematicBreak} from './thematic-break.js'\n\n/**\n * Default handlers for nodes.\n */\nexport const handlers = {\n blockquote,\n break: hardBreak,\n code,\n delete: strikethrough,\n emphasis,\n footnoteReference,\n footnote,\n heading,\n html,\n imageReference,\n image,\n inlineCode,\n linkReference,\n link,\n listItem,\n list,\n paragraph,\n root,\n strong,\n table,\n tableCell,\n tableRow,\n text,\n thematicBreak,\n toml: ignore,\n yaml: ignore,\n definition: ignore,\n footnoteDefinition: ignore\n}\n\n// Return nothing for nodes that are ignored.\nfunction ignore() {\n // To do: next major: return `undefined`.\n return null\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').Blockquote} Blockquote\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `blockquote` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {Blockquote} node\n * mdast node.\n * @returns {Element}\n * hast node.\n */\nexport function blockquote(state, node) {\n /** @type {Element} */\n const result = {\n type: 'element',\n tagName: 'blockquote',\n properties: {},\n children: state.wrap(state.all(node), true)\n }\n state.patch(node, result)\n return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').Text} Text\n * @typedef {import('mdast').Break} Break\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `break` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {Break} node\n * mdast node.\n * @returns {Array}\n * hast element content.\n */\nexport function hardBreak(state, node) {\n /** @type {Element} */\n const result = {type: 'element', tagName: 'br', properties: {}, children: []}\n state.patch(node, result)\n return [state.applyData(node, result), {type: 'text', value: '\\n'}]\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').Properties} Properties\n * @typedef {import('mdast').Code} Code\n * @typedef {import('../state.js').State} State\n\n */\n\n/**\n * Turn an mdast `code` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {Code} node\n * mdast node.\n * @returns {Element}\n * hast node.\n */\nexport function code(state, node) {\n const value = node.value ? node.value + '\\n' : ''\n // To do: next major, use `node.lang` w/o regex, the splitting’s been going\n // on for years in remark now.\n const lang = node.lang ? node.lang.match(/^[^ \\t]+(?=[ \\t]|$)/) : null\n /** @type {Properties} */\n const properties = {}\n\n if (lang) {\n properties.className = ['language-' + lang]\n }\n\n // Create ``.\n /** @type {Element} */\n let result = {\n type: 'element',\n tagName: 'code',\n properties,\n children: [{type: 'text', value}]\n }\n\n if (node.meta) {\n result.data = {meta: node.meta}\n }\n\n state.patch(node, result)\n result = state.applyData(node, result)\n\n // Create `
`.\n  result = {type: 'element', tagName: 'pre', properties: {}, children: [result]}\n  state.patch(node, result)\n  return result\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').Delete} Delete\n * @typedef {import('../state.js').State} State\n\n */\n\n/**\n * Turn an mdast `delete` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {Delete} node\n *   mdast node.\n * @returns {Element}\n *   hast node.\n */\nexport function strikethrough(state, node) {\n  /** @type {Element} */\n  const result = {\n    type: 'element',\n    tagName: 'del',\n    properties: {},\n    children: state.all(node)\n  }\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').Emphasis} Emphasis\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `emphasis` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {Emphasis} node\n *   mdast node.\n * @returns {Element}\n *   hast node.\n */\nexport function emphasis(state, node) {\n  /** @type {Element} */\n  const result = {\n    type: 'element',\n    tagName: 'em',\n    properties: {},\n    children: state.all(node)\n  }\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').Footnote} Footnote\n * @typedef {import('../state.js').State} State\n */\n\nimport {footnoteReference} from './footnote-reference.js'\n\n// To do: when both:\n// * \n// * \n// …are archived, remove this (also from mdast).\n// These inline notes are not used in GFM.\n\n/**\n * Turn an mdast `footnote` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {Footnote} node\n *   mdast node.\n * @returns {Element}\n *   hast node.\n */\nexport function footnote(state, node) {\n  const footnoteById = state.footnoteById\n  let no = 1\n\n  while (no in footnoteById) no++\n\n  const identifier = String(no)\n\n  footnoteById[identifier] = {\n    type: 'footnoteDefinition',\n    identifier,\n    children: [{type: 'paragraph', children: node.children}],\n    position: node.position\n  }\n\n  return footnoteReference(state, {\n    type: 'footnoteReference',\n    identifier,\n    position: node.position\n  })\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').Heading} Heading\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `heading` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {Heading} node\n *   mdast node.\n * @returns {Element}\n *   hast node.\n */\nexport function heading(state, node) {\n  /** @type {Element} */\n  const result = {\n    type: 'element',\n    tagName: 'h' + node.depth,\n    properties: {},\n    children: state.all(node)\n  }\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').HTML} Html\n * @typedef {import('../state.js').State} State\n * @typedef {import('../../index.js').Raw} Raw\n */\n\n/**\n * Turn an mdast `html` node into hast (`raw` node in dangerous mode, otherwise\n * nothing).\n *\n * @param {State} state\n *   Info passed around.\n * @param {Html} node\n *   mdast node.\n * @returns {Raw | Element | null}\n *   hast node.\n */\nexport function html(state, node) {\n  if (state.dangerous) {\n    /** @type {Raw} */\n    const result = {type: 'raw', value: node.value}\n    state.patch(node, result)\n    return state.applyData(node, result)\n  }\n\n  // To do: next major: return `undefined`.\n  return null\n}\n","/**\n * @typedef {import('hast').ElementContent} ElementContent\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').Properties} Properties\n * @typedef {import('mdast').ImageReference} ImageReference\n * @typedef {import('../state.js').State} State\n */\n\nimport {normalizeUri} from 'micromark-util-sanitize-uri'\nimport {revert} from '../revert.js'\n\n/**\n * Turn an mdast `imageReference` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {ImageReference} node\n *   mdast node.\n * @returns {ElementContent | Array}\n *   hast node.\n */\nexport function imageReference(state, node) {\n  const def = state.definition(node.identifier)\n\n  if (!def) {\n    return revert(state, node)\n  }\n\n  /** @type {Properties} */\n  const properties = {src: normalizeUri(def.url || ''), alt: node.alt}\n\n  if (def.title !== null && def.title !== undefined) {\n    properties.title = def.title\n  }\n\n  /** @type {Element} */\n  const result = {type: 'element', tagName: 'img', properties, children: []}\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').Properties} Properties\n * @typedef {import('mdast').Image} Image\n * @typedef {import('../state.js').State} State\n */\n\nimport {normalizeUri} from 'micromark-util-sanitize-uri'\n\n/**\n * Turn an mdast `image` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {Image} node\n *   mdast node.\n * @returns {Element}\n *   hast node.\n */\nexport function image(state, node) {\n  /** @type {Properties} */\n  const properties = {src: normalizeUri(node.url)}\n\n  if (node.alt !== null && node.alt !== undefined) {\n    properties.alt = node.alt\n  }\n\n  if (node.title !== null && node.title !== undefined) {\n    properties.title = node.title\n  }\n\n  /** @type {Element} */\n  const result = {type: 'element', tagName: 'img', properties, children: []}\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').Text} Text\n * @typedef {import('mdast').InlineCode} InlineCode\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `inlineCode` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {InlineCode} node\n *   mdast node.\n * @returns {Element}\n *   hast node.\n */\nexport function inlineCode(state, node) {\n  /** @type {Text} */\n  const text = {type: 'text', value: node.value.replace(/\\r?\\n|\\r/g, ' ')}\n  state.patch(node, text)\n\n  /** @type {Element} */\n  const result = {\n    type: 'element',\n    tagName: 'code',\n    properties: {},\n    children: [text]\n  }\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').ElementContent} ElementContent\n * @typedef {import('hast').Properties} Properties\n * @typedef {import('mdast').LinkReference} LinkReference\n * @typedef {import('../state.js').State} State\n */\n\nimport {normalizeUri} from 'micromark-util-sanitize-uri'\nimport {revert} from '../revert.js'\n\n/**\n * Turn an mdast `linkReference` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {LinkReference} node\n *   mdast node.\n * @returns {ElementContent | Array}\n *   hast node.\n */\nexport function linkReference(state, node) {\n  const def = state.definition(node.identifier)\n\n  if (!def) {\n    return revert(state, node)\n  }\n\n  /** @type {Properties} */\n  const properties = {href: normalizeUri(def.url || '')}\n\n  if (def.title !== null && def.title !== undefined) {\n    properties.title = def.title\n  }\n\n  /** @type {Element} */\n  const result = {\n    type: 'element',\n    tagName: 'a',\n    properties,\n    children: state.all(node)\n  }\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').Properties} Properties\n * @typedef {import('mdast').Link} Link\n * @typedef {import('../state.js').State} State\n */\n\nimport {normalizeUri} from 'micromark-util-sanitize-uri'\n\n/**\n * Turn an mdast `link` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {Link} node\n *   mdast node.\n * @returns {Element}\n *   hast node.\n */\nexport function link(state, node) {\n  /** @type {Properties} */\n  const properties = {href: normalizeUri(node.url)}\n\n  if (node.title !== null && node.title !== undefined) {\n    properties.title = node.title\n  }\n\n  /** @type {Element} */\n  const result = {\n    type: 'element',\n    tagName: 'a',\n    properties,\n    children: state.all(node)\n  }\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').Properties} Properties\n * @typedef {import('mdast').List} List\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `list` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {List} node\n *   mdast node.\n * @returns {Element}\n *   hast node.\n */\nexport function list(state, node) {\n  /** @type {Properties} */\n  const properties = {}\n  const results = state.all(node)\n  let index = -1\n\n  if (typeof node.start === 'number' && node.start !== 1) {\n    properties.start = node.start\n  }\n\n  // Like GitHub, add a class for custom styling.\n  while (++index < results.length) {\n    const child = results[index]\n\n    if (\n      child.type === 'element' &&\n      child.tagName === 'li' &&\n      child.properties &&\n      Array.isArray(child.properties.className) &&\n      child.properties.className.includes('task-list-item')\n    ) {\n      properties.className = ['contains-task-list']\n      break\n    }\n  }\n\n  /** @type {Element} */\n  const result = {\n    type: 'element',\n    tagName: node.ordered ? 'ol' : 'ul',\n    properties,\n    children: state.wrap(results, true)\n  }\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').Paragraph} Paragraph\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `paragraph` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {Paragraph} node\n *   mdast node.\n * @returns {Element}\n *   hast node.\n */\nexport function paragraph(state, node) {\n  /** @type {Element} */\n  const result = {\n    type: 'element',\n    tagName: 'p',\n    properties: {},\n    children: state.all(node)\n  }\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Root} HastRoot\n * @typedef {import('hast').Element} HastElement\n * @typedef {import('mdast').Root} MdastRoot\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `root` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {MdastRoot} node\n *   mdast node.\n * @returns {HastRoot | HastElement}\n *   hast node.\n */\nexport function root(state, node) {\n  /** @type {HastRoot} */\n  const result = {type: 'root', children: state.wrap(state.all(node))}\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').Strong} Strong\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `strong` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {Strong} node\n *   mdast node.\n * @returns {Element}\n *   hast node.\n */\nexport function strong(state, node) {\n  /** @type {Element} */\n  const result = {\n    type: 'element',\n    tagName: 'strong',\n    properties: {},\n    children: state.all(node)\n  }\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').Table} Table\n * @typedef {import('../state.js').State} State\n */\n\nimport {pointStart, pointEnd} from 'unist-util-position'\n\n/**\n * Turn an mdast `table` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {Table} node\n *   mdast node.\n * @returns {Element}\n *   hast node.\n */\nexport function table(state, node) {\n  const rows = state.all(node)\n  const firstRow = rows.shift()\n  /** @type {Array} */\n  const tableContent = []\n\n  if (firstRow) {\n    /** @type {Element} */\n    const head = {\n      type: 'element',\n      tagName: 'thead',\n      properties: {},\n      children: state.wrap([firstRow], true)\n    }\n    state.patch(node.children[0], head)\n    tableContent.push(head)\n  }\n\n  if (rows.length > 0) {\n    /** @type {Element} */\n    const body = {\n      type: 'element',\n      tagName: 'tbody',\n      properties: {},\n      children: state.wrap(rows, true)\n    }\n\n    const start = pointStart(node.children[1])\n    const end = pointEnd(node.children[node.children.length - 1])\n    if (start.line && end.line) body.position = {start, end}\n    tableContent.push(body)\n  }\n\n  /** @type {Element} */\n  const result = {\n    type: 'element',\n    tagName: 'table',\n    properties: {},\n    children: state.wrap(tableContent, true)\n  }\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').TableCell} TableCell\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `tableCell` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {TableCell} node\n *   mdast node.\n * @returns {Element}\n *   hast node.\n */\nexport function tableCell(state, node) {\n  // Note: this function is normally not called: see `table-row` for how rows\n  // and their cells are compiled.\n  /** @type {Element} */\n  const result = {\n    type: 'element',\n    tagName: 'td', // Assume body cell.\n    properties: {},\n    children: state.all(node)\n  }\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Properties} Properties\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').ElementContent} ElementContent\n * @typedef {import('mdast').Content} Content\n * @typedef {import('mdast').Parent} Parent\n * @typedef {import('mdast').Root} Root\n * @typedef {import('mdast').TableRow} TableRow\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * @typedef {Root | Content} Nodes\n * @typedef {Extract} Parents\n */\n\n/**\n * Turn an mdast `tableRow` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {TableRow} node\n *   mdast node.\n * @param {Parents | null | undefined} parent\n *   Parent of `node`.\n * @returns {Element}\n *   hast node.\n */\nexport function tableRow(state, node, parent) {\n  const siblings = parent ? parent.children : undefined\n  // Generate a body row when without parent.\n  const rowIndex = siblings ? siblings.indexOf(node) : 1\n  const tagName = rowIndex === 0 ? 'th' : 'td'\n  const align = parent && parent.type === 'table' ? parent.align : undefined\n  const length = align ? align.length : node.children.length\n  let cellIndex = -1\n  /** @type {Array} */\n  const cells = []\n\n  while (++cellIndex < length) {\n    // Note: can also be undefined.\n    const cell = node.children[cellIndex]\n    /** @type {Properties} */\n    const properties = {}\n    const alignValue = align ? align[cellIndex] : undefined\n\n    if (alignValue) {\n      properties.align = alignValue\n    }\n\n    /** @type {Element} */\n    let result = {type: 'element', tagName, properties, children: []}\n\n    if (cell) {\n      result.children = state.all(cell)\n      state.patch(cell, result)\n      result = state.applyData(node, result)\n    }\n\n    cells.push(result)\n  }\n\n  /** @type {Element} */\n  const result = {\n    type: 'element',\n    tagName: 'tr',\n    properties: {},\n    children: state.wrap(cells, true)\n  }\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} HastElement\n * @typedef {import('hast').Text} HastText\n * @typedef {import('mdast').Text} MdastText\n * @typedef {import('../state.js').State} State\n */\n\nimport {trimLines} from 'trim-lines'\n\n/**\n * Turn an mdast `text` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {MdastText} node\n *   mdast node.\n * @returns {HastText | HastElement}\n *   hast node.\n */\nexport function text(state, node) {\n  /** @type {HastText} */\n  const result = {type: 'text', value: trimLines(String(node.value))}\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').ThematicBreak} ThematicBreak\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `thematicBreak` node into hast.\n *\n * @param {State} state\n *   Info passed around.\n * @param {ThematicBreak} node\n *   mdast node.\n * @returns {Element}\n *   hast node.\n */\nexport function thematicBreak(state, node) {\n  /** @type {Element} */\n  const result = {\n    type: 'element',\n    tagName: 'hr',\n    properties: {},\n    children: []\n  }\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Content} HastContent\n * @typedef {import('hast').Element} HastElement\n * @typedef {import('hast').ElementContent} HastElementContent\n * @typedef {import('hast').Properties} HastProperties\n * @typedef {import('hast').Root} HastRoot\n * @typedef {import('hast').Text} HastText\n *\n * @typedef {import('mdast').Content} MdastContent\n * @typedef {import('mdast').Definition} MdastDefinition\n * @typedef {import('mdast').FootnoteDefinition} MdastFootnoteDefinition\n * @typedef {import('mdast').Parent} MdastParent\n * @typedef {import('mdast').Root} MdastRoot\n */\n\n/**\n * @typedef {HastRoot | HastContent} HastNodes\n * @typedef {MdastRoot | MdastContent} MdastNodes\n * @typedef {Extract} MdastParents\n *\n * @typedef EmbeddedHastFields\n *   hast fields.\n * @property {string | null | undefined} [hName]\n *   Generate a specific element with this tag name instead.\n * @property {HastProperties | null | undefined} [hProperties]\n *   Generate an element with these properties instead.\n * @property {Array | null | undefined} [hChildren]\n *   Generate an element with this content instead.\n *\n * @typedef {Record & EmbeddedHastFields} MdastData\n *   mdast data with embedded hast fields.\n *\n * @typedef {MdastNodes & {data?: MdastData | null | undefined}} MdastNodeWithData\n *   mdast node with embedded hast data.\n *\n * @typedef PointLike\n *   Point-like value.\n * @property {number | null | undefined} [line]\n *   Line.\n * @property {number | null | undefined} [column]\n *   Column.\n * @property {number | null | undefined} [offset]\n *   Offset.\n *\n * @typedef PositionLike\n *   Position-like value.\n * @property {PointLike | null | undefined} [start]\n *   Point-like value.\n * @property {PointLike | null | undefined} [end]\n *   Point-like value.\n *\n * @callback Handler\n *   Handle a node.\n * @param {State} state\n *   Info passed around.\n * @param {any} node\n *   mdast node to handle.\n * @param {MdastParents | null | undefined} parent\n *   Parent of `node`.\n * @returns {HastElementContent | Array | null | undefined}\n *   hast node.\n *\n * @callback HFunctionProps\n *   Signature of `state` for when props are passed.\n * @param {MdastNodes | PositionLike | null | undefined} node\n *   mdast node or unist position.\n * @param {string} tagName\n *   HTML tag name.\n * @param {HastProperties} props\n *   Properties.\n * @param {Array | null | undefined} [children]\n *   hast content.\n * @returns {HastElement}\n *   Compiled element.\n *\n * @callback HFunctionNoProps\n *   Signature of `state` for when no props are passed.\n * @param {MdastNodes | PositionLike | null | undefined} node\n *   mdast node or unist position.\n * @param {string} tagName\n *   HTML tag name.\n * @param {Array | null | undefined} [children]\n *   hast content.\n * @returns {HastElement}\n *   Compiled element.\n *\n * @typedef HFields\n *   Info on `state`.\n * @property {boolean} dangerous\n *   Whether HTML is allowed.\n * @property {string} clobberPrefix\n *   Prefix to use to prevent DOM clobbering.\n * @property {string} footnoteLabel\n *   Label to use to introduce the footnote section.\n * @property {string} footnoteLabelTagName\n *   HTML used for the footnote label.\n * @property {HastProperties} footnoteLabelProperties\n *   Properties on the HTML tag used for the footnote label.\n * @property {string} footnoteBackLabel\n *   Label to use from backreferences back to their footnote call.\n * @property {(identifier: string) => MdastDefinition | null} definition\n *   Definition cache.\n * @property {Record} footnoteById\n *   Footnote definitions by their identifier.\n * @property {Array} footnoteOrder\n *   Identifiers of order when footnote calls first appear in tree order.\n * @property {Record} footnoteCounts\n *   Counts for how often the same footnote was called.\n * @property {Handlers} handlers\n *   Applied handlers.\n * @property {Handler} unknownHandler\n *   Handler for any none not in `passThrough` or otherwise handled.\n * @property {(from: MdastNodes, node: HastNodes) => void} patch\n *   Copy a node’s positional info.\n * @property {(from: MdastNodes, to: Type) => Type | HastElement} applyData\n *   Honor the `data` of `from`, and generate an element instead of `node`.\n * @property {(node: MdastNodes, parent: MdastParents | null | undefined) => HastElementContent | Array | null | undefined} one\n *   Transform an mdast node to hast.\n * @property {(node: MdastNodes) => Array} all\n *   Transform the children of an mdast parent to hast.\n * @property {(nodes: Array, loose?: boolean | null | undefined) => Array} wrap\n *   Wrap `nodes` with line endings between each node, adds initial/final line endings when `loose`.\n * @property {(left: MdastNodeWithData | PositionLike | null | undefined, right: HastElementContent) => HastElementContent} augment\n *   Like `state` but lower-level and usable on non-elements.\n *   Deprecated: use `patch` and `applyData`.\n * @property {Array} passThrough\n *   List of node types to pass through untouched (except for their children).\n *\n * @typedef Options\n *   Configuration (optional).\n * @property {boolean | null | undefined} [allowDangerousHtml=false]\n *   Whether to persist raw HTML in markdown in the hast tree.\n * @property {string | null | undefined} [clobberPrefix='user-content-']\n *   Prefix to use before the `id` attribute on footnotes to prevent it from\n *   *clobbering*.\n * @property {string | null | undefined} [footnoteBackLabel='Back to content']\n *   Label to use from backreferences back to their footnote call (affects\n *   screen readers).\n * @property {string | null | undefined} [footnoteLabel='Footnotes']\n *   Label to use for the footnotes section (affects screen readers).\n * @property {HastProperties | null | undefined} [footnoteLabelProperties={className: ['sr-only']}]\n *   Properties to use on the footnote label (note that `id: 'footnote-label'`\n *   is always added as footnote calls use it with `aria-describedby` to\n *   provide an accessible label).\n * @property {string | null | undefined} [footnoteLabelTagName='h2']\n *   Tag name to use for the footnote label.\n * @property {Handlers | null | undefined} [handlers]\n *   Extra handlers for nodes.\n * @property {Array | null | undefined} [passThrough]\n *   List of custom mdast node types to pass through (keep) in hast (note that\n *   the node itself is passed, but eventual children are transformed).\n * @property {Handler | null | undefined} [unknownHandler]\n *   Handler for all unknown nodes.\n *\n * @typedef {Record} Handlers\n *   Handle nodes.\n *\n * @typedef {HFunctionProps & HFunctionNoProps & HFields} State\n *   Info passed around.\n */\n\nimport {visit} from 'unist-util-visit'\nimport {position, pointStart, pointEnd} from 'unist-util-position'\nimport {generated} from 'unist-util-generated'\nimport {definitions} from 'mdast-util-definitions'\nimport {handlers} from './handlers/index.js'\n\nconst own = {}.hasOwnProperty\n\n/**\n * Create `state` from an mdast tree.\n *\n * @param {MdastNodes} tree\n *   mdast node to transform.\n * @param {Options | null | undefined} [options]\n *   Configuration.\n * @returns {State}\n *   `state` function.\n */\nexport function createState(tree, options) {\n  const settings = options || {}\n  const dangerous = settings.allowDangerousHtml || false\n  /** @type {Record} */\n  const footnoteById = {}\n\n  // To do: next major: add `options` to state, remove:\n  // `dangerous`, `clobberPrefix`, `footnoteLabel`, `footnoteLabelTagName`,\n  // `footnoteLabelProperties`, `footnoteBackLabel`, `passThrough`,\n  // `unknownHandler`.\n\n  // To do: next major: move to `state.options.allowDangerousHtml`.\n  state.dangerous = dangerous\n  // To do: next major: move to `state.options`.\n  state.clobberPrefix =\n    settings.clobberPrefix === undefined || settings.clobberPrefix === null\n      ? 'user-content-'\n      : settings.clobberPrefix\n  // To do: next major: move to `state.options`.\n  state.footnoteLabel = settings.footnoteLabel || 'Footnotes'\n  // To do: next major: move to `state.options`.\n  state.footnoteLabelTagName = settings.footnoteLabelTagName || 'h2'\n  // To do: next major: move to `state.options`.\n  state.footnoteLabelProperties = settings.footnoteLabelProperties || {\n    className: ['sr-only']\n  }\n  // To do: next major: move to `state.options`.\n  state.footnoteBackLabel = settings.footnoteBackLabel || 'Back to content'\n  // To do: next major: move to `state.options`.\n  state.unknownHandler = settings.unknownHandler\n  // To do: next major: move to `state.options`.\n  state.passThrough = settings.passThrough\n\n  state.handlers = {...handlers, ...settings.handlers}\n\n  // To do: next major: replace utility with `definitionById` object, so we\n  // only walk once (as we need footnotes too).\n  state.definition = definitions(tree)\n  state.footnoteById = footnoteById\n  /** @type {Array} */\n  state.footnoteOrder = []\n  /** @type {Record} */\n  state.footnoteCounts = {}\n\n  state.patch = patch\n  state.applyData = applyData\n  state.one = oneBound\n  state.all = allBound\n  state.wrap = wrap\n  // To do: next major: remove `augment`.\n  state.augment = augment\n\n  visit(tree, 'footnoteDefinition', (definition) => {\n    const id = String(definition.identifier).toUpperCase()\n\n    // Mimick CM behavior of link definitions.\n    // See: .\n    if (!own.call(footnoteById, id)) {\n      footnoteById[id] = definition\n    }\n  })\n\n  // @ts-expect-error Hush, it’s fine!\n  return state\n\n  /**\n   * Finalise the created `right`, a hast node, from `left`, an mdast node.\n   *\n   * @param {MdastNodeWithData | PositionLike | null | undefined} left\n   * @param {HastElementContent} right\n   * @returns {HastElementContent}\n   */\n  /* c8 ignore start */\n  // To do: next major: remove.\n  function augment(left, right) {\n    // Handle `data.hName`, `data.hProperties, `data.hChildren`.\n    if (left && 'data' in left && left.data) {\n      /** @type {MdastData} */\n      const data = left.data\n\n      if (data.hName) {\n        if (right.type !== 'element') {\n          right = {\n            type: 'element',\n            tagName: '',\n            properties: {},\n            children: []\n          }\n        }\n\n        right.tagName = data.hName\n      }\n\n      if (right.type === 'element' && data.hProperties) {\n        right.properties = {...right.properties, ...data.hProperties}\n      }\n\n      if ('children' in right && right.children && data.hChildren) {\n        right.children = data.hChildren\n      }\n    }\n\n    if (left) {\n      const ctx = 'type' in left ? left : {position: left}\n\n      if (!generated(ctx)) {\n        // @ts-expect-error: fine.\n        right.position = {start: pointStart(ctx), end: pointEnd(ctx)}\n      }\n    }\n\n    return right\n  }\n  /* c8 ignore stop */\n\n  /**\n   * Create an element for `node`.\n   *\n   * @type {HFunctionProps}\n   */\n  /* c8 ignore start */\n  // To do: next major: remove.\n  function state(node, tagName, props, children) {\n    if (Array.isArray(props)) {\n      children = props\n      props = {}\n    }\n\n    // @ts-expect-error augmenting an element yields an element.\n    return augment(node, {\n      type: 'element',\n      tagName,\n      properties: props || {},\n      children: children || []\n    })\n  }\n  /* c8 ignore stop */\n\n  /**\n   * Transform an mdast node into a hast node.\n   *\n   * @param {MdastNodes} node\n   *   mdast node.\n   * @param {MdastParents | null | undefined} [parent]\n   *   Parent of `node`.\n   * @returns {HastElementContent | Array | null | undefined}\n   *   Resulting hast node.\n   */\n  function oneBound(node, parent) {\n    // @ts-expect-error: that’s a state :)\n    return one(state, node, parent)\n  }\n\n  /**\n   * Transform the children of an mdast node into hast nodes.\n   *\n   * @param {MdastNodes} parent\n   *   mdast node to compile\n   * @returns {Array}\n   *   Resulting hast nodes.\n   */\n  function allBound(parent) {\n    // @ts-expect-error: that’s a state :)\n    return all(state, parent)\n  }\n}\n\n/**\n * Copy a node’s positional info.\n *\n * @param {MdastNodes} from\n *   mdast node to copy from.\n * @param {HastNodes} to\n *   hast node to copy into.\n * @returns {void}\n *   Nothing.\n */\nfunction patch(from, to) {\n  if (from.position) to.position = position(from)\n}\n\n/**\n * Honor the `data` of `from` and maybe generate an element instead of `to`.\n *\n * @template {HastNodes} Type\n *   Node type.\n * @param {MdastNodes} from\n *   mdast node to use data from.\n * @param {Type} to\n *   hast node to change.\n * @returns {Type | HastElement}\n *   Nothing.\n */\nfunction applyData(from, to) {\n  /** @type {Type | HastElement} */\n  let result = to\n\n  // Handle `data.hName`, `data.hProperties, `data.hChildren`.\n  if (from && from.data) {\n    const hName = from.data.hName\n    const hChildren = from.data.hChildren\n    const hProperties = from.data.hProperties\n\n    if (typeof hName === 'string') {\n      // Transforming the node resulted in an element with a different name\n      // than wanted:\n      if (result.type === 'element') {\n        result.tagName = hName\n      }\n      // Transforming the node resulted in a non-element, which happens for\n      // raw, text, and root nodes (unless custom handlers are passed).\n      // The intent is likely to keep the content around (otherwise: pass\n      // `hChildren`).\n      else {\n        result = {\n          type: 'element',\n          tagName: hName,\n          properties: {},\n          children: []\n        }\n\n        // To do: next major: take the children from the `root`, or inject the\n        // raw/text/comment or so into the element?\n        // if ('children' in node) {\n        //   // @ts-expect-error: assume `children` are allowed in elements.\n        //   result.children = node.children\n        // } else {\n        //   // @ts-expect-error: assume `node` is allowed in elements.\n        //   result.children.push(node)\n        // }\n      }\n    }\n\n    if (result.type === 'element' && hProperties) {\n      result.properties = {...result.properties, ...hProperties}\n    }\n\n    if (\n      'children' in result &&\n      result.children &&\n      hChildren !== null &&\n      hChildren !== undefined\n    ) {\n      // @ts-expect-error: assume valid children are defined.\n      result.children = hChildren\n    }\n  }\n\n  return result\n}\n\n/**\n * Transform an mdast node into a hast node.\n *\n * @param {State} state\n *   Info passed around.\n * @param {MdastNodes} node\n *   mdast node.\n * @param {MdastParents | null | undefined} [parent]\n *   Parent of `node`.\n * @returns {HastElementContent | Array | null | undefined}\n *   Resulting hast node.\n */\n// To do: next major: do not expose, keep bound.\nexport function one(state, node, parent) {\n  const type = node && node.type\n\n  // Fail on non-nodes.\n  if (!type) {\n    throw new Error('Expected node, got `' + node + '`')\n  }\n\n  if (own.call(state.handlers, type)) {\n    return state.handlers[type](state, node, parent)\n  }\n\n  if (state.passThrough && state.passThrough.includes(type)) {\n    // To do: next major: deep clone.\n    // @ts-expect-error: types of passed through nodes are expected to be added manually.\n    return 'children' in node ? {...node, children: all(state, node)} : node\n  }\n\n  if (state.unknownHandler) {\n    return state.unknownHandler(state, node, parent)\n  }\n\n  return defaultUnknownHandler(state, node)\n}\n\n/**\n * Transform the children of an mdast node into hast nodes.\n *\n * @param {State} state\n *   Info passed around.\n * @param {MdastNodes} parent\n *   mdast node to compile\n * @returns {Array}\n *   Resulting hast nodes.\n */\n// To do: next major: do not expose, keep bound.\nexport function all(state, parent) {\n  /** @type {Array} */\n  const values = []\n\n  if ('children' in parent) {\n    const nodes = parent.children\n    let index = -1\n    while (++index < nodes.length) {\n      const result = one(state, nodes[index], parent)\n\n      // To do: see if we van clean this? Can we merge texts?\n      if (result) {\n        if (index && nodes[index - 1].type === 'break') {\n          if (!Array.isArray(result) && result.type === 'text') {\n            result.value = result.value.replace(/^\\s+/, '')\n          }\n\n          if (!Array.isArray(result) && result.type === 'element') {\n            const head = result.children[0]\n\n            if (head && head.type === 'text') {\n              head.value = head.value.replace(/^\\s+/, '')\n            }\n          }\n        }\n\n        if (Array.isArray(result)) {\n          values.push(...result)\n        } else {\n          values.push(result)\n        }\n      }\n    }\n  }\n\n  return values\n}\n\n/**\n * Transform an unknown node.\n *\n * @param {State} state\n *   Info passed around.\n * @param {MdastNodes} node\n *   Unknown mdast node.\n * @returns {HastText | HastElement}\n *   Resulting hast node.\n */\nfunction defaultUnknownHandler(state, node) {\n  const data = node.data || {}\n  /** @type {HastText | HastElement} */\n  const result =\n    'value' in node &&\n    !(own.call(data, 'hProperties') || own.call(data, 'hChildren'))\n      ? {type: 'text', value: node.value}\n      : {\n          type: 'element',\n          tagName: 'div',\n          properties: {},\n          children: all(state, node)\n        }\n\n  state.patch(node, result)\n  return state.applyData(node, result)\n}\n\n/**\n * Wrap `nodes` with line endings between each node.\n *\n * @template {HastContent} Type\n *   Node type.\n * @param {Array} nodes\n *   List of nodes to wrap.\n * @param {boolean | null | undefined} [loose=false]\n *   Whether to add line endings at start and end.\n * @returns {Array}\n *   Wrapped nodes.\n */\nexport function wrap(nodes, loose) {\n  /** @type {Array} */\n  const result = []\n  let index = -1\n\n  if (loose) {\n    result.push({type: 'text', value: '\\n'})\n  }\n\n  while (++index < nodes.length) {\n    if (index) result.push({type: 'text', value: '\\n'})\n    result.push(nodes[index])\n  }\n\n  if (loose && nodes.length > 0) {\n    result.push({type: 'text', value: '\\n'})\n  }\n\n  return result\n}\n","/**\n * @typedef PointLike\n * @property {number | null | undefined} [line]\n * @property {number | null | undefined} [column]\n * @property {number | null | undefined} [offset]\n *\n * @typedef PositionLike\n * @property {PointLike | null | undefined} [start]\n * @property {PointLike | null | undefined} [end]\n *\n * @typedef NodeLike\n * @property {PositionLike | null | undefined} [position]\n */\n\n/**\n * Check if `node` is generated.\n *\n * @param {NodeLike | null | undefined} [node]\n *   Node to check.\n * @returns {boolean}\n *   Whether `node` is generated (does not have positional info).\n */\nexport function generated(node) {\n  return (\n    !node ||\n    !node.position ||\n    !node.position.start ||\n    !node.position.start.line ||\n    !node.position.start.column ||\n    !node.position.end ||\n    !node.position.end.line ||\n    !node.position.end.column\n  )\n}\n","/**\n * @typedef {import('hast').Content} HastContent\n * @typedef {import('hast').Root} HastRoot\n *\n * @typedef {import('mdast').Content} MdastContent\n * @typedef {import('mdast').Root} MdastRoot\n *\n * @typedef {import('./state.js').Options} Options\n */\n\n/**\n * @typedef {HastRoot | HastContent} HastNodes\n * @typedef {MdastRoot | MdastContent} MdastNodes\n */\n\nimport {footer} from './footer.js'\nimport {createState} from './state.js'\n\n/**\n * Transform mdast to hast.\n *\n * ##### Notes\n *\n * ###### HTML\n *\n * Raw HTML is available in mdast as `html` nodes and can be embedded in hast\n * as semistandard `raw` nodes.\n * Most utilities ignore `raw` nodes but two notable ones don’t:\n *\n * *   `hast-util-to-html` also has an option `allowDangerousHtml` which will\n *     output the raw HTML.\n *     This is typically discouraged as noted by the option name but is useful\n *     if you completely trust authors\n * *   `hast-util-raw` can handle the raw embedded HTML strings by parsing them\n *     into standard hast nodes (`element`, `text`, etc).\n *     This is a heavy task as it needs a full HTML parser, but it is the only\n *     way to support untrusted content\n *\n * ###### Footnotes\n *\n * Many options supported here relate to footnotes.\n * Footnotes are not specified by CommonMark, which we follow by default.\n * They are supported by GitHub, so footnotes can be enabled in markdown with\n * `mdast-util-gfm`.\n *\n * The options `footnoteBackLabel` and `footnoteLabel` define natural language\n * that explains footnotes, which is hidden for sighted users but shown to\n * assistive technology.\n * When your page is not in English, you must define translated values.\n *\n * Back references use ARIA attributes, but the section label itself uses a\n * heading that is hidden with an `sr-only` class.\n * To show it to sighted users, define different attributes in\n * `footnoteLabelProperties`.\n *\n * ###### Clobbering\n *\n * Footnotes introduces a problem, as it links footnote calls to footnote\n * definitions on the page through `id` attributes generated from user content,\n * which results in DOM clobbering.\n *\n * DOM clobbering is this:\n *\n * ```html\n * 

\n * \n * ```\n *\n * Elements by their ID are made available by browsers on the `window` object,\n * which is a security risk.\n * Using a prefix solves this problem.\n *\n * More information on how to handle clobbering and the prefix is explained in\n * Example: headings (DOM clobbering) in `rehype-sanitize`.\n *\n * ###### Unknown nodes\n *\n * Unknown nodes are nodes with a type that isn’t in `handlers` or `passThrough`.\n * The default behavior for unknown nodes is:\n *\n * * when the node has a `value` (and doesn’t have `data.hName`,\n * `data.hProperties`, or `data.hChildren`, see later), create a hast `text`\n * node\n * * otherwise, create a `
` element (which could be changed with\n * `data.hName`), with its children mapped from mdast to hast as well\n *\n * This behavior can be changed by passing an `unknownHandler`.\n *\n * @param {MdastNodes} tree\n * mdast tree.\n * @param {Options | null | undefined} [options]\n * Configuration.\n * @returns {HastNodes | null | undefined}\n * hast tree.\n */\n// To do: next major: always return a single `root`.\nexport function toHast(tree, options) {\n const state = createState(tree, options)\n const node = state.one(tree, null)\n const foot = footer(state)\n\n if (foot) {\n // @ts-expect-error If there’s a footer, there were definitions, meaning block\n // content.\n // So assume `node` is a parent node.\n node.children.push({type: 'text', value: '\\n'}, foot)\n }\n\n // To do: next major: always return root?\n return Array.isArray(node) ? {type: 'root', children: node} : node\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').ElementContent} ElementContent\n *\n * @typedef {import('./state.js').State} State\n */\n\nimport {normalizeUri} from 'micromark-util-sanitize-uri'\n\n/**\n * Generate a hast footer for called footnote definitions.\n *\n * @param {State} state\n * Info passed around.\n * @returns {Element | undefined}\n * `section` element or `undefined`.\n */\nexport function footer(state) {\n /** @type {Array} */\n const listItems = []\n let index = -1\n\n while (++index < state.footnoteOrder.length) {\n const def = state.footnoteById[state.footnoteOrder[index]]\n\n if (!def) {\n continue\n }\n\n const content = state.all(def)\n const id = String(def.identifier).toUpperCase()\n const safeId = normalizeUri(id.toLowerCase())\n let referenceIndex = 0\n /** @type {Array} */\n const backReferences = []\n\n while (++referenceIndex <= state.footnoteCounts[id]) {\n /** @type {Element} */\n const backReference = {\n type: 'element',\n tagName: 'a',\n properties: {\n href:\n '#' +\n state.clobberPrefix +\n 'fnref-' +\n safeId +\n (referenceIndex > 1 ? '-' + referenceIndex : ''),\n dataFootnoteBackref: true,\n className: ['data-footnote-backref'],\n ariaLabel: state.footnoteBackLabel\n },\n children: [{type: 'text', value: '↩'}]\n }\n\n if (referenceIndex > 1) {\n backReference.children.push({\n type: 'element',\n tagName: 'sup',\n children: [{type: 'text', value: String(referenceIndex)}]\n })\n }\n\n if (backReferences.length > 0) {\n backReferences.push({type: 'text', value: ' '})\n }\n\n backReferences.push(backReference)\n }\n\n const tail = content[content.length - 1]\n\n if (tail && tail.type === 'element' && tail.tagName === 'p') {\n const tailTail = tail.children[tail.children.length - 1]\n if (tailTail && tailTail.type === 'text') {\n tailTail.value += ' '\n } else {\n tail.children.push({type: 'text', value: ' '})\n }\n\n tail.children.push(...backReferences)\n } else {\n content.push(...backReferences)\n }\n\n /** @type {Element} */\n const listItem = {\n type: 'element',\n tagName: 'li',\n properties: {id: state.clobberPrefix + 'fn-' + safeId},\n children: state.wrap(content, true)\n }\n\n state.patch(def, listItem)\n\n listItems.push(listItem)\n }\n\n if (listItems.length === 0) {\n return\n }\n\n return {\n type: 'element',\n tagName: 'section',\n properties: {dataFootnotes: true, className: ['footnotes']},\n children: [\n {\n type: 'element',\n tagName: state.footnoteLabelTagName,\n properties: {\n // To do: use structured clone.\n ...JSON.parse(JSON.stringify(state.footnoteLabelProperties)),\n id: 'footnote-label'\n },\n children: [{type: 'text', value: state.footnoteLabel}]\n },\n {type: 'text', value: '\\n'},\n {\n type: 'element',\n tagName: 'ol',\n properties: {},\n children: state.wrap(listItems, true)\n },\n {type: 'text', value: '\\n'}\n ]\n }\n}\n","/**\n * @typedef {import('hast').Root} HastRoot\n * @typedef {import('mdast').Root} MdastRoot\n * @typedef {import('mdast-util-to-hast').Options} Options\n * @typedef {import('unified').Processor} Processor\n *\n * @typedef {import('mdast-util-to-hast')} DoNotTouchAsThisImportIncludesRawInTree\n */\n\nimport {toHast} from 'mdast-util-to-hast'\n\n// Note: the `` overload doesn’t seem to work :'(\n\n/**\n * Plugin that turns markdown into HTML to support rehype.\n *\n * * If a destination processor is given, that processor runs with a new HTML\n * (hast) tree (bridge-mode).\n * As the given processor runs with a hast tree, and rehype plugins support\n * hast, that means rehype plugins can be used with the given processor.\n * The hast tree is discarded in the end.\n * It’s highly unlikely that you want to do this.\n * * The common case is to not pass a destination processor, in which case the\n * current processor continues running with a new HTML (hast) tree\n * (mutate-mode).\n * As the current processor continues with a hast tree, and rehype plugins\n * support hast, that means rehype plugins can be used after\n * `remark-rehype`.\n * It’s likely that this is what you want to do.\n *\n * @param destination\n * Optional unified processor.\n * @param options\n * Options passed to `mdast-util-to-hast`.\n */\nconst remarkRehype =\n /** @type {(import('unified').Plugin<[Processor, Options?]|[null|undefined, Options?]|[Options]|[], MdastRoot>)} */\n (\n function (destination, options) {\n return destination && 'run' in destination\n ? bridge(destination, options)\n : mutate(destination || options)\n }\n )\n\nexport default remarkRehype\n\n/**\n * Bridge-mode.\n * Runs the destination with the new hast tree.\n *\n * @type {import('unified').Plugin<[Processor, Options?], MdastRoot>}\n */\nfunction bridge(destination, options) {\n return (node, file, next) => {\n destination.run(toHast(node, options), file, (error) => {\n next(error)\n })\n }\n}\n\n/**\n * Mutate-mode.\n * Further plugins run on the hast tree.\n *\n * @type {import('unified').Plugin<[Options?]|void[], MdastRoot, HastRoot>}\n */\nfunction mutate(options) {\n // @ts-expect-error: assume a corresponding node is returned by `toHast`.\n return (node) => toHast(node, options)\n}\n","/**\n * @typedef {import('./info.js').Info} Info\n * @typedef {Record} Properties\n * @typedef {Record} Normal\n */\n\nexport class Schema {\n /**\n * @constructor\n * @param {Properties} property\n * @param {Normal} normal\n * @param {string} [space]\n */\n constructor(property, normal, space) {\n this.property = property\n this.normal = normal\n if (space) {\n this.space = space\n }\n }\n}\n\n/** @type {Properties} */\nSchema.prototype.property = {}\n/** @type {Normal} */\nSchema.prototype.normal = {}\n/** @type {string|null} */\nSchema.prototype.space = null\n","/**\n * @typedef {import('./schema.js').Properties} Properties\n * @typedef {import('./schema.js').Normal} Normal\n */\n\nimport {Schema} from './schema.js'\n\n/**\n * @param {Schema[]} definitions\n * @param {string} [space]\n * @returns {Schema}\n */\nexport function merge(definitions, space) {\n /** @type {Properties} */\n const property = {}\n /** @type {Normal} */\n const normal = {}\n let index = -1\n\n while (++index < definitions.length) {\n Object.assign(property, definitions[index].property)\n Object.assign(normal, definitions[index].normal)\n }\n\n return new Schema(property, normal, space)\n}\n","/**\n * @param {string} value\n * @returns {string}\n */\nexport function normalize(value) {\n return value.toLowerCase()\n}\n","export class Info {\n /**\n * @constructor\n * @param {string} property\n * @param {string} attribute\n */\n constructor(property, attribute) {\n /** @type {string} */\n this.property = property\n /** @type {string} */\n this.attribute = attribute\n }\n}\n\n/** @type {string|null} */\nInfo.prototype.space = null\nInfo.prototype.boolean = false\nInfo.prototype.booleanish = false\nInfo.prototype.overloadedBoolean = false\nInfo.prototype.number = false\nInfo.prototype.commaSeparated = false\nInfo.prototype.spaceSeparated = false\nInfo.prototype.commaOrSpaceSeparated = false\nInfo.prototype.mustUseProperty = false\nInfo.prototype.defined = false\n","let powers = 0\n\nexport const boolean = increment()\nexport const booleanish = increment()\nexport const overloadedBoolean = increment()\nexport const number = increment()\nexport const spaceSeparated = increment()\nexport const commaSeparated = increment()\nexport const commaOrSpaceSeparated = increment()\n\nfunction increment() {\n return 2 ** ++powers\n}\n","import {Info} from './info.js'\nimport * as types from './types.js'\n\n/** @type {Array} */\n// @ts-expect-error: hush.\nconst checks = Object.keys(types)\n\nexport class DefinedInfo extends Info {\n /**\n * @constructor\n * @param {string} property\n * @param {string} attribute\n * @param {number|null} [mask]\n * @param {string} [space]\n */\n constructor(property, attribute, mask, space) {\n let index = -1\n\n super(property, attribute)\n\n mark(this, 'space', space)\n\n if (typeof mask === 'number') {\n while (++index < checks.length) {\n const check = checks[index]\n mark(this, checks[index], (mask & types[check]) === types[check])\n }\n }\n }\n}\n\nDefinedInfo.prototype.defined = true\n\n/**\n * @param {DefinedInfo} values\n * @param {string} key\n * @param {unknown} value\n */\nfunction mark(values, key, value) {\n if (value) {\n // @ts-expect-error: assume `value` matches the expected value of `key`.\n values[key] = value\n }\n}\n","/**\n * @typedef {import('./schema.js').Properties} Properties\n * @typedef {import('./schema.js').Normal} Normal\n *\n * @typedef {Record} Attributes\n *\n * @typedef {Object} Definition\n * @property {Record} properties\n * @property {(attributes: Attributes, property: string) => string} transform\n * @property {string} [space]\n * @property {Attributes} [attributes]\n * @property {Array} [mustUseProperty]\n */\n\nimport {normalize} from '../normalize.js'\nimport {Schema} from './schema.js'\nimport {DefinedInfo} from './defined-info.js'\n\nconst own = {}.hasOwnProperty\n\n/**\n * @param {Definition} definition\n * @returns {Schema}\n */\nexport function create(definition) {\n /** @type {Properties} */\n const property = {}\n /** @type {Normal} */\n const normal = {}\n /** @type {string} */\n let prop\n\n for (prop in definition.properties) {\n if (own.call(definition.properties, prop)) {\n const value = definition.properties[prop]\n const info = new DefinedInfo(\n prop,\n definition.transform(definition.attributes || {}, prop),\n value,\n definition.space\n )\n\n if (\n definition.mustUseProperty &&\n definition.mustUseProperty.includes(prop)\n ) {\n info.mustUseProperty = true\n }\n\n property[prop] = info\n\n normal[normalize(prop)] = prop\n normal[normalize(info.attribute)] = prop\n }\n }\n\n return new Schema(property, normal, definition.space)\n}\n","import {create} from './util/create.js'\n\nexport const xlink = create({\n space: 'xlink',\n transform(_, prop) {\n return 'xlink:' + prop.slice(5).toLowerCase()\n },\n properties: {\n xLinkActuate: null,\n xLinkArcRole: null,\n xLinkHref: null,\n xLinkRole: null,\n xLinkShow: null,\n xLinkTitle: null,\n xLinkType: null\n }\n})\n","import {create} from './util/create.js'\n\nexport const xml = create({\n space: 'xml',\n transform(_, prop) {\n return 'xml:' + prop.slice(3).toLowerCase()\n },\n properties: {xmlLang: null, xmlBase: null, xmlSpace: null}\n})\n","/**\n * @param {Record} attributes\n * @param {string} attribute\n * @returns {string}\n */\nexport function caseSensitiveTransform(attributes, attribute) {\n return attribute in attributes ? attributes[attribute] : attribute\n}\n","import {caseSensitiveTransform} from './case-sensitive-transform.js'\n\n/**\n * @param {Record} attributes\n * @param {string} property\n * @returns {string}\n */\nexport function caseInsensitiveTransform(attributes, property) {\n return caseSensitiveTransform(attributes, property.toLowerCase())\n}\n","import {create} from './util/create.js'\nimport {caseInsensitiveTransform} from './util/case-insensitive-transform.js'\n\nexport const xmlns = create({\n space: 'xmlns',\n attributes: {xmlnsxlink: 'xmlns:xlink'},\n transform: caseInsensitiveTransform,\n properties: {xmlns: null, xmlnsXLink: null}\n})\n","import {booleanish, number, spaceSeparated} from './util/types.js'\nimport {create} from './util/create.js'\n\nexport const aria = create({\n transform(_, prop) {\n return prop === 'role' ? prop : 'aria-' + prop.slice(4).toLowerCase()\n },\n properties: {\n ariaActiveDescendant: null,\n ariaAtomic: booleanish,\n ariaAutoComplete: null,\n ariaBusy: booleanish,\n ariaChecked: booleanish,\n ariaColCount: number,\n ariaColIndex: number,\n ariaColSpan: number,\n ariaControls: spaceSeparated,\n ariaCurrent: null,\n ariaDescribedBy: spaceSeparated,\n ariaDetails: null,\n ariaDisabled: booleanish,\n ariaDropEffect: spaceSeparated,\n ariaErrorMessage: null,\n ariaExpanded: booleanish,\n ariaFlowTo: spaceSeparated,\n ariaGrabbed: booleanish,\n ariaHasPopup: null,\n ariaHidden: booleanish,\n ariaInvalid: null,\n ariaKeyShortcuts: null,\n ariaLabel: null,\n ariaLabelledBy: spaceSeparated,\n ariaLevel: number,\n ariaLive: null,\n ariaModal: booleanish,\n ariaMultiLine: booleanish,\n ariaMultiSelectable: booleanish,\n ariaOrientation: null,\n ariaOwns: spaceSeparated,\n ariaPlaceholder: null,\n ariaPosInSet: number,\n ariaPressed: booleanish,\n ariaReadOnly: booleanish,\n ariaRelevant: null,\n ariaRequired: booleanish,\n ariaRoleDescription: spaceSeparated,\n ariaRowCount: number,\n ariaRowIndex: number,\n ariaRowSpan: number,\n ariaSelected: booleanish,\n ariaSetSize: number,\n ariaSort: null,\n ariaValueMax: number,\n ariaValueMin: number,\n ariaValueNow: number,\n ariaValueText: null,\n role: null\n }\n})\n","import {\n boolean,\n overloadedBoolean,\n booleanish,\n number,\n spaceSeparated,\n commaSeparated\n} from './util/types.js'\nimport {create} from './util/create.js'\nimport {caseInsensitiveTransform} from './util/case-insensitive-transform.js'\n\nexport const html = create({\n space: 'html',\n attributes: {\n acceptcharset: 'accept-charset',\n classname: 'class',\n htmlfor: 'for',\n httpequiv: 'http-equiv'\n },\n transform: caseInsensitiveTransform,\n mustUseProperty: ['checked', 'multiple', 'muted', 'selected'],\n properties: {\n // Standard Properties.\n abbr: null,\n accept: commaSeparated,\n acceptCharset: spaceSeparated,\n accessKey: spaceSeparated,\n action: null,\n allow: null,\n allowFullScreen: boolean,\n allowPaymentRequest: boolean,\n allowUserMedia: boolean,\n alt: null,\n as: null,\n async: boolean,\n autoCapitalize: null,\n autoComplete: spaceSeparated,\n autoFocus: boolean,\n autoPlay: boolean,\n blocking: spaceSeparated,\n capture: null,\n charSet: null,\n checked: boolean,\n cite: null,\n className: spaceSeparated,\n cols: number,\n colSpan: null,\n content: null,\n contentEditable: booleanish,\n controls: boolean,\n controlsList: spaceSeparated,\n coords: number | commaSeparated,\n crossOrigin: null,\n data: null,\n dateTime: null,\n decoding: null,\n default: boolean,\n defer: boolean,\n dir: null,\n dirName: null,\n disabled: boolean,\n download: overloadedBoolean,\n draggable: booleanish,\n encType: null,\n enterKeyHint: null,\n fetchPriority: null,\n form: null,\n formAction: null,\n formEncType: null,\n formMethod: null,\n formNoValidate: boolean,\n formTarget: null,\n headers: spaceSeparated,\n height: number,\n hidden: boolean,\n high: number,\n href: null,\n hrefLang: null,\n htmlFor: spaceSeparated,\n httpEquiv: spaceSeparated,\n id: null,\n imageSizes: null,\n imageSrcSet: null,\n inert: boolean,\n inputMode: null,\n integrity: null,\n is: null,\n isMap: boolean,\n itemId: null,\n itemProp: spaceSeparated,\n itemRef: spaceSeparated,\n itemScope: boolean,\n itemType: spaceSeparated,\n kind: null,\n label: null,\n lang: null,\n language: null,\n list: null,\n loading: null,\n loop: boolean,\n low: number,\n manifest: null,\n max: null,\n maxLength: number,\n media: null,\n method: null,\n min: null,\n minLength: number,\n multiple: boolean,\n muted: boolean,\n name: null,\n nonce: null,\n noModule: boolean,\n noValidate: boolean,\n onAbort: null,\n onAfterPrint: null,\n onAuxClick: null,\n onBeforeMatch: null,\n onBeforePrint: null,\n onBeforeToggle: null,\n onBeforeUnload: null,\n onBlur: null,\n onCancel: null,\n onCanPlay: null,\n onCanPlayThrough: null,\n onChange: null,\n onClick: null,\n onClose: null,\n onContextLost: null,\n onContextMenu: null,\n onContextRestored: null,\n onCopy: null,\n onCueChange: null,\n onCut: null,\n onDblClick: null,\n onDrag: null,\n onDragEnd: null,\n onDragEnter: null,\n onDragExit: null,\n onDragLeave: null,\n onDragOver: null,\n onDragStart: null,\n onDrop: null,\n onDurationChange: null,\n onEmptied: null,\n onEnded: null,\n onError: null,\n onFocus: null,\n onFormData: null,\n onHashChange: null,\n onInput: null,\n onInvalid: null,\n onKeyDown: null,\n onKeyPress: null,\n onKeyUp: null,\n onLanguageChange: null,\n onLoad: null,\n onLoadedData: null,\n onLoadedMetadata: null,\n onLoadEnd: null,\n onLoadStart: null,\n onMessage: null,\n onMessageError: null,\n onMouseDown: null,\n onMouseEnter: null,\n onMouseLeave: null,\n onMouseMove: null,\n onMouseOut: null,\n onMouseOver: null,\n onMouseUp: null,\n onOffline: null,\n onOnline: null,\n onPageHide: null,\n onPageShow: null,\n onPaste: null,\n onPause: null,\n onPlay: null,\n onPlaying: null,\n onPopState: null,\n onProgress: null,\n onRateChange: null,\n onRejectionHandled: null,\n onReset: null,\n onResize: null,\n onScroll: null,\n onScrollEnd: null,\n onSecurityPolicyViolation: null,\n onSeeked: null,\n onSeeking: null,\n onSelect: null,\n onSlotChange: null,\n onStalled: null,\n onStorage: null,\n onSubmit: null,\n onSuspend: null,\n onTimeUpdate: null,\n onToggle: null,\n onUnhandledRejection: null,\n onUnload: null,\n onVolumeChange: null,\n onWaiting: null,\n onWheel: null,\n open: boolean,\n optimum: number,\n pattern: null,\n ping: spaceSeparated,\n placeholder: null,\n playsInline: boolean,\n popover: null,\n popoverTarget: null,\n popoverTargetAction: null,\n poster: null,\n preload: null,\n readOnly: boolean,\n referrerPolicy: null,\n rel: spaceSeparated,\n required: boolean,\n reversed: boolean,\n rows: number,\n rowSpan: number,\n sandbox: spaceSeparated,\n scope: null,\n scoped: boolean,\n seamless: boolean,\n selected: boolean,\n shadowRootClonable: boolean,\n shadowRootDelegatesFocus: boolean,\n shadowRootMode: null,\n shape: null,\n size: number,\n sizes: null,\n slot: null,\n span: number,\n spellCheck: booleanish,\n src: null,\n srcDoc: null,\n srcLang: null,\n srcSet: null,\n start: number,\n step: null,\n style: null,\n tabIndex: number,\n target: null,\n title: null,\n translate: null,\n type: null,\n typeMustMatch: boolean,\n useMap: null,\n value: booleanish,\n width: number,\n wrap: null,\n writingSuggestions: null,\n\n // Legacy.\n // See: https://html.spec.whatwg.org/#other-elements,-attributes-and-apis\n align: null, // Several. Use CSS `text-align` instead,\n aLink: null, // ``. Use CSS `a:active {color}` instead\n archive: spaceSeparated, // ``. List of URIs to archives\n axis: null, // `
` and ``. Use `scope` on ``\n background: null, // ``. Use CSS `background-image` instead\n bgColor: null, // `` and table elements. Use CSS `background-color` instead\n border: number, // ``. Use CSS `border-width` instead,\n borderColor: null, // `
`. Use CSS `border-color` instead,\n bottomMargin: number, // ``\n cellPadding: null, // `
`\n cellSpacing: null, // `
`\n char: null, // Several table elements. When `align=char`, sets the character to align on\n charOff: null, // Several table elements. When `char`, offsets the alignment\n classId: null, // ``\n clear: null, // `
`. Use CSS `clear` instead\n code: null, // ``\n codeBase: null, // ``\n codeType: null, // ``\n color: null, // `` and `
`. Use CSS instead\n compact: boolean, // Lists. Use CSS to reduce space between items instead\n declare: boolean, // ``\n event: null, // `