1import{e as A,a as y,r as C,bD as m,i as D,p as T,j as a,M as P,s as L,I as U}from"./index.C_jEAofg.js";import{r as i,L as z}from"./reactRouter.C6cvQAHO.js";import{A as O}from"./AccessDenied.Da_IVTEt.js";/* empty css */import{u as R}from"./i18n.BxWiIRpk.js";import"./recharts.DzmhKP_O.js";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{};e.SENTRY_RELEASE={id:"aec9389561908f1f1b5366362ca3b629220ab900"},e._sentryModuleMetadata=e._sentryModuleMetadata||{},e._sentryModuleMetadata[new e.Error().stack]=function(s){for(var d=1;d<arguments.length;d++){var n=arguments[d];if(n!=null)for(var o in n)n.hasOwnProperty(o)&&(s[o]=n[o])}return s}({},e._sentryModuleMetadata[new e.Error().stack],{"_sentryBundlerPluginAppKey:tuf-website":!0});var l=new e.Error().stack;l&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[l]="95a30a93-ad6e-43e4-9496-be575ee92b03",e._sentryDebugIdIdentifier="sentry-dbid-95a30a93-ad6e-43e4-9496-be575ee92b03")}catch{}})();const h=50,F=({name:e,iconUrl:l})=>{const s=(e||"?").trim().charAt(0).toUpperCase()||"?";return l?a.jsx("img",{src:L(l,U.MEDIUM),alt:"",className:"admin-oauth-clients-page__icon"}):a.jsx("span",{className:"admin-oauth-clients-page__icon admin-oauth-clients-page__icon--fallback","aria-hidden":!0,children:s})},K=()=>{const{t:e}=R("pages"),{user:l}=A(),[s,d]=i.useState([]),[n,o]=i.useState(0),[x,j]=i.useState(!0),[f,I]=i.useState(""),[v,N]=i.useState(""),[r,_]=i.useState(0),[u,b]=i.useState(null),g=i.useCallback(async()=>{var t,c;j(!0);try{const w=await y.get(C.admin.oauthClients.list(),{params:{q:v||void 0,limit:h,offset:r}});d(((t=w.data)==null?void 0:t.apps)||[]),o(Number((c=w.data)==null?void 0:c.total)||0)}catch{m.error(e("admin.oauthClients.loadError")),d([]),o(0)}finally{j(!1)}},[v,r,e]);if(i.useEffect(()=>{g()},[g]),i.useEffect(()=>{const t=setTimeout(()=>{_(0),N(f.trim())},300);return()=>clearTimeout(t)},[f]),!D(l,T.SUPER_ADMIN))return a.jsx(O,{metaTitle:e("admin.oauthClients.meta.title"),metaDescription:e("admin.oauthClients.meta.description")});const p=async(t,c)=>{b(t);try{await y.post(C.admin.oauthClients.action(t,c)),m.success(e(`admin.oauthClients.actionOk.${c}`)),await g()}catch{m.error(e(`admin.oauthClients.actionFail.${c}`))}finally{b(null)}},E=async t=>{if(window.confirm(e("admin.oauthClients.deleteConfirm",{name:t.name}))){b(t.id);try{await y.delete(C.admin.oauthClients.byId(t.id)),m.success(e("admin.oauthClients.deleted")),await g()}catch{m.error(e("admin.oauthClients.deleteFail"))}finally{b(null)}}},k=Math.min(r+s.length,n),M=r>0,S=r+h<n;return a.jsxs("div",{className:"admin-oauth-clients-page",children:[a.jsx(P,{title:e("admin.oauthClients.meta.title"),description:e("admin.oauthClients.meta.description"),noindex:!0}),a.jsxs("header",{className:"developers-portal__top",children:[a.jsx("div",{className:"developers-portal__top-text",children:a.jsx("h1",{className:"developers-portal__title",children:e("admin.oauthClients.title")})}),a.jsx("nav",{className:"developers-portal__nav","aria-label":e("admin.oauthClients.back"),children:a.jsx(z,{to:"/developers",className:"developers-portal__nav-link",children:e("admin.oauthClients.back")})})]}),a.jsxs("form",{className:"admin-oauth-clients-page__search",onSubmit:t=>{t.preventDefault(),_(0),N(f.trim())},children:[a.jsxs("label",{className:"admin-oauth-clients-page__search-field",children:[a.jsx("span",{className:"admin-oauth-clients-page__sr-only",children:e("admin.oauthClients.searchLabel")}),a.jsx("input",{type:"search",value:f,onChange:t=>I(t.target.value),placeholder:e("admin.oauthClients.searchPlaceholder"),autoComplete:"off"})]}),a.jsx("button",{type:"submit",className:"btn-fill-primary",children:e("admin.oauthClients.search")})]}),a.jsx("p",{className:"admin-oauth-clients-page__count",children:x?e("admin.oauthClients.loading"):e("admin.oauthClients.resultCount",{shown:s.length,total:n})}),x?a.jsx("div",{className:"loader loader-relative"}):s.length===0?a.jsx("p",{className:"admin-oauth-clients-page__empty",children:e("admin.oauthClients.empty")}):a.jsx("ul",{className:"admin-oauth-clients-page__list",children:s.map(t=>a.jsxs("li",{className:"admin-oauth-clients-page__row",children:[a.jsx(F,{name:t.name,iconUrl:t.iconUrl}),a.jsxs("div",{className:"admin-oauth-clients-page__main",children:[a.jsxs("div",{className:"admin-oauth-clients-page__title-row",children:[a.jsxs("strong",{className:"admin-oauth-clients-page__name",children:[t.name,t.verified?a.jsx("span",{className:"admin-oauth-clients-page__verified",title:e("admin.oauthClients.verified"),children:"â"}):null]}),a.jsx("span",{className:`admin-oauth-clients-page__status admin-oauth-clients-page__status--${t.status}`,children:t.status})]}),a.jsxs("div",{className:"admin-oauth-clients-page__meta",children:[a.jsxs("span",{title:e("admin.oauthClients.clientId"),children:[e("admin.oauthClients.clientId"),": ",a.jsx("code",{children:t.clientId})]}),a.jsxs("span",{title:e("admin.oauthClients.rowId"),children:[e("admin.oauthClients.rowId"),": ",a.jsx("code",{children:t.id})]}),a.jsxs("span",{children:[e("admin.oauthClients.owner"),": ",t.ownerUsername||t.ownerUserId||"â"]}
1),t.createdAt?a.jsxs("span",{children:[e("admin.oauthClients.created"),":"," ",new Date(t.createdAt).toLocaleString()]}):null]})]}),a.jsxs("div",{className:"admin-oauth-clients-page__actions",children:[t.status==="active"?a.jsx("button",{type:"button",className:"btn-fill-secondary",disabled:u===t.id,onClick:()=>p(t.id,"freeze"),children:e("admin.oauthClients.freeze")}):a.jsx("button",{type:"button",className:"btn-fill-secondary",disabled:u===t.id,onClick:()=>p(t.id,"unfreeze"),children:e("admin.oauthClients.unfreeze")}),t.verified?a.jsx("button",{type:"button",className:"btn-fill-secondary",disabled:u===t.id,onClick:()=>p(t.id,"unverify"),children:e("admin.oauthClients.unverify")}):a.jsx("button",{type:"button",className:"btn-fill-primary",disabled:u===t.id,onClick:()=>p(t.id,"verify"),children:e("admin.oauthClients.verify")}),a.jsx("button",{type:"button",className:"btn-fill-danger",disabled:u===t.id,onClick:()=>E(t),children:e("admin.oauthClients.delete")})]})]},t.id))}),!x&&n>h?a.jsxs("div",{className:"admin-oauth-clients-page__pager",children:[a.jsx("button",{type:"button",className:"btn-fill-secondary",disabled:!M,onClick:()=>_(t=>Math.max(0,t-h)),children:e("admin.oauthClients.prev")}),a.jsx("span",{children:e("admin.oauthClients.pageRange",{start:r+1,end:k,total:n})}),a.jsx("button",{type:"button",className:"btn-fill-secondary",disabled:!S,onClick:()=>_(t=>t+h),children:e("admin.oauthClients.next")})]}):null]})};export{K as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.