import{b4 as k,r as c,p as i,y as h,e as P,bl as f,T as C,o as _,q as g,bt as I,bf as L,bh as u,bb as M,j as e,L as v,Q as j,b6 as d,b$ as b,d as a,c as y,bc as S}from"./index-CK33qGU_.js";import{s as D,a as N,b as E}from"./scope.selectors-C6FB6Cbj.js";import{c as K}from"./utils-LzNCUvhl.js";import"./storage-connector-BuEuJyVA.js";import"./useDownload-hrjXceJg.js";import"./useProject-BzBQtp4J.js";import"./length-fOfC3W0h.js";import"./FileUploaderButton-Bppadu35.js";import"./dumbPluralize-CcxDsNiu.js";import"./props-DsctD44O.js";import"./zipObj-DQ8OxaYj.js";const T={td:{whiteSpace:"nowrap",textAlign:"left",pr:0},"td:nth-of-type(1)":{pl:"20px"},"td:nth-of-type(6)":{pr:"20px",svg:{fontSize:"14px"}},">table>tbody>tr:first-of-type":{mb:"0px"}},R=(t,n)=>{const s=k(),o=c.useMemo(()=>t.map(({scope:r})=>[i,n.length===r.length?h:i,i,h,h,P]),[t,n]),p=c.useMemo(()=>t.map(({name:r,scope:l,prefix:x,created:m,modified:w})=>[{children:r},{...l.length===n.length?{children:"full scope",gray:!0}:{children:K(l.map(A=>A.toLowerCase()).join(", "),65)}},{children:x},{gray:!0,children:f(new Date(m),"yyyy-MM-dd")},{gray:!0,children:f(new Date(w),"yyyy-MM-dd")},{intent:"ghost",icon:C.edit,tooltip:"Edit",onClick:()=>s(_(g.account.api.edit,"",{name:r}))}]),[t,s,n]);return c.useMemo(()=>[o,p],[o,p])},z=c.memo(I),U=()=>{const t=L(),n=u(D),s=u(N).sort((x,m)=>x.name.localeCompare(m.name));M(S.api);const o=k(),p=u(E),[r,l]=R(s,n);return c.useEffect(()=>{t.api.fetch(),t.scope.fetch()},[t]),p?e.jsx(v,{}):s.length?e.jsxs(e.Fragment,{children:[e.jsxs(j,{width:"1000px",title:"API keys",contentProps:{pb:0,overflow:"auto"},actions:e.jsx(d,{href:b("/user_guides/projects/api_key/create_api_key/"),external:!0,target:"_blank",p:0,intent:"inline",children:"documentation↗"}),children:[e.jsxs(a,{mb:"25x",children:[e.jsxs(a,{width:"100%",children:[e.jsx(i,{primary:!0,children:s.length}),e.jsx(i,{ml:"5px",children:s.length>1?" API keys":" API key"})]}),e.jsx(d,{minWidth:"105px",onClick:()=>o(g.account.api.create),children:"New API key"})]}),e.jsx(y,{mt:"20px",mx:"-20px",sx:T,children:e.jsx(z,{legend:["name","scope","API key prefix","creation","modification"],middleColumn:1,groupComponents:r,groupProps:l})})]}),e.jsx(y,{sx:{height:"20px",width:"100%",backgroundColor:"grayShade3",opacity:0},children:"invisible block margin"})]}):e.jsxs(j,{title:"API keys",actions:e.jsx(d,{href:b("/user_guides/projects/api_key/create_api_key/"),target:"_blank",external:!0,p:0,intent:"inline",children:"documentation↗"}),children:[e.jsxs(a,{mb:"25x",children:[e.jsxs(a,{width:"100%",children:[e.jsx(i,{primary:!0,children:"0"}),e.jsx(i,{ml:"5px",children:"API keys"})]}),e.jsx(d,{minWidth:"105px",onClick:()=>o(g.account.api.create),children:"New API key"})]}),e.jsx(y,{mt:"20px",mx:"-20px",children:e.jsx(a,{height:"50px",mt:"30px",justifyContent:"center",children:e.jsx(h,{fontSize:"18px",gray:!0,children:"No API keys defined"})})})]})};export{U as default};
