All Downloads are FREE. Search and download functionalities are using the official Maven repository.

theme.keycloak.v2.admin.resources.assets.ClientsSection-29f6917b.js Maven / Gradle / Ivy

There is a newer version: 25.0.1
Show newest version
import{aW as M,u as h,d as S,c as x,b as X,r as C,l as B,g as y,A as Y,j as e,B as I,L as k,aX as N,W as ie,H as z,q as ne,an as G,am as V,h as W,au as J,Z as ae,P as oe,al as O,aT as re,ab as ce,aY as le,a8 as Q,aZ as de,a_ as me}from"./index-f33eb656.js";import{u as E}from"./ConfirmDialog-cc2aa7b4.js";import{V as ue,F as pe}from"./ViewHeader-5aaa6ccc.js";import{R as U,u as ee}from"./RoutableTabs-8ba6475e.js";import{K as F}from"./KeycloakDataTable-82a4b6c2.js";import{L as ye}from"./PaginatingTableToolbar-2e41cd99.js";import{u as he,F as $}from"./useFormatDate-0368aa03.js";import{V as xe,N as b,W as te}from"./Td-137060bd.js";import{u as ge}from"./useToggle-d322044d.js";import{u as fe,m as je}from"./useLocaleSort-22b9cad8.js";import{M as Ce,a as Te}from"./Modal-e76dd76f.js";import{e as be,D as _,a as H,c as Z,d as v}from"./DataListItemRow-c0c554d3.js";import{b as w}from"./ToolbarContent-f1a19b22.js";import{a as D,b as A}from"./Tabs-5aebe4ec.js";import{i as De,g as Ae}from"./utils-49fe564a.js";import"./Text-83f5a4d7.js";import"./EmptyStateBody-de699127.js";import"./plus-circle-icon-2ea0b4ed.js";import"./EmptyStateSecondaryActions-7a33984f.js";import"./TableToolbar-8e38cfad.js";import"./Form-6c170f69.js";import"./star-icon-d7615f00.js";import"./check-fc57dbe1.js";import"./grip-vertical-icon-90ec69d5.js";import"./Checkbox-8826c1eb.js";import"./data-list-7d55714c.js";import"./plus-icon-6a98b80b.js";import"./MenuList-b32c7668.js";const ke=()=>({className:xe.modifiers.wrap}),Ie=({rootUrl:t,baseUrl:s},i)=>s?.startsWith("http")?s:(t==="${authBaseUrl}"||t==="${authAdminUrl}")&&s?t.replace(/\$\{(authAdminUrl|authBaseUrl)\}/,M(i,s)):t?.startsWith("http")?s?M(t,s):t:s,Le=()=>{const{t}=h("clients"),{addAlert:s,addError:i}=S(),{realm:a}=x(),o=he(),c=X(),[l,d]=C.useState(),n=async()=>{try{return await y.realms.getClientsInitialAccess({realm:a})}catch{return[]}},[p,g]=E({titleKey:"clients:tokenDeleteConfirmTitle",messageKey:t("tokenDeleteConfirm",{id:l?.id}),continueButtonLabel:"common:delete",continueButtonVariant:B.danger,onConfirm:async()=>{try{await y.realms.delClientsInitialAccess({realm:a,id:l.id}),s(t("tokenDeleteSuccess"),Y.success),d(void 0)}catch(r){i("clients:tokenDeleteError",r)}}});return e.jsxs(e.Fragment,{children:[e.jsx(g,{}),e.jsx(F,{ariaLabelKey:"clients:initialAccessToken",searchPlaceholderKey:"clients:searchInitialAccessToken",loader:n,toolbarItem:e.jsx(I,{component:r=>e.jsx(k,{...r,to:N({realm:a})}),children:t("common:create")}),actions:[{title:t("common:delete"),onRowClick:r=>{d(r),p()}}],columns:[{name:"id",displayKey:"common:id"},{name:"timestamp",displayKey:"clients:timestamp",cellRenderer:r=>o(new Date(r.timestamp*1e3),$)},{name:"expiration",displayKey:"clients:expires",cellRenderer:r=>o(new Date(r.timestamp*1e3+r.expiration*1e3),$)},{name:"count",displayKey:"clients:count"},{name:"remainingCount",displayKey:"clients:remainingCount",transforms:[ke]}],emptyState:e.jsx(ye,{message:t("noTokens"),instructions:t("noTokensInstructions"),primaryActionText:t("common:create"),onPrimaryAction:()=>c(N({realm:a}))})},l?.id)]})},Re=({onConfirm:t,toggleDialog:s})=>{const{t:i}=h("clients"),a=ie(),o=Object.keys(a.providers?.["client-registration-policy"].providers||[]),c=a.componentTypes?.["org.keycloak.services.clientregistration.policy.ClientRegistrationPolicy"],l=fe(),d=C.useMemo(()=>l(c?.filter(n=>o.includes(n.id))||[],je("id")),[o,c]);return e.jsx(Ce,{variant:Te.medium,title:i("chooseAPolicyProvider"),isOpen:!0,onClose:s,children:e.jsxs(be,{onSelectDataListItem:n=>{t(n),s()},"aria-label":i("addPredefinedMappers"),isCompact:!0,children:[e.jsx(_,{"aria-label":i("headerName"),id:"header",children:e.jsx(H,{children:e.jsx(Z,{dataListCells:[i("common:name"),i("common:description")].map(n=>e.jsx(v,{style:{fontWeight:700},children:n},n))})})}),d.map(n=>e.jsx(_,{"aria-label":n.id,"data-testid":n.id,id:n.id,children:e.jsx(H,{children:e.jsx(Z,{dataListCells:[e.jsx(v,{width:2,children:n.id},`name-${n.id}`),e.jsx(v,{width:4,children:n.helpText},`description-${n.id}`)]})})},n.id))]})})},Ke=t=>{const{realm:s}=x(),{subTab:i}=z();return e.jsx(k,{to:G({realm:s,subTab:i||"anonymous",providerId:t.providerId,id:t.id}),children:t.name},t.id)},q=({subType:t})=>{const{t:s}=h("clients"),{subTab:i}=z(),a=X(),{addAlert:o,addError:c}=S(),{realm:l}=x(),[d,n]=C.useState([]),[p,g]=C.useState(),[r,f]=ge();ne(()=>y.components.find({type:"org.keycloak.services.clientregistration.policy.ClientRegistrationPolicy"}),m=>n(m.filter(K=>K.subType===t)),[p]);const[L,R]=E({titleKey:"clients:clientRegisterPolicyDeleteConfirmTitle",messageKey:s("clientRegisterPolicyDeleteConfirm",{name:p?.name}),continueButtonLabel:"common:delete",continueButtonVariant:B.danger,onConfirm:async()=>{try{await y.components.del({realm:l,id:p?.id}),o(s("clientRegisterPolicyDeleteSuccess")),g(void 0)}catch(m){c("clients:clientRegisterPolicyDeleteError",m)}}});return e.jsxs(e.Fragment,{children:[r&&e.jsx(Re,{onConfirm:m=>a(G({realm:l,subTab:i||"anonymous",providerId:m})),toggleDialog:f}),e.jsx(R,{}),e.jsx(F,{ariaLabelKey:"clients:initialAccessToken",searchPlaceholderKey:"clients:searchInitialAccessToken",loader:d,toolbarItem:e.jsx(w,{children:e.jsx(I,{"data-testid":"createPolicy",onClick:f,children:s("createPolicy")})}),actions:[{title:s("common:delete"),onRowClick:m=>{g(m),L()}}],columns:[{name:"name",displayKey:"common:name",cellRenderer:Ke},{name:"providerId",displayKey:"clients:providerId"}]})]})},Pe=()=>{const{t}=h("clients"),{realm:s}=x(),i=c=>ee(V({realm:s,subTab:c})),a=i("anonymous"),o=i("authenticated");return e.jsxs(U,{defaultLocation:V({realm:s,subTab:"anonymous"}),mountOnEnter:!0,children:[e.jsx(D,{"data-testid":"anonymous",title:e.jsxs(A,{children:[t("anonymousAccessPolicies")," ",e.jsx(W,{fieldLabelId:"",helpText:t("clients-help:anonymousAccessPolicies"),noVerticalAlign:!1,unWrap:!0})]}),...a,children:e.jsx(q,{subType:"anonymous"})}),e.jsx(D,{"data-testid":"authenticated",title:e.jsxs(A,{children:[t("authenticatedAccessPolicies")," ",e.jsx(W,{fieldLabelId:"",helpText:t("clients-help:authenticatedAccessPolicies"),noVerticalAlign:!1,unWrap:!0})]}),...o,children:e.jsx(q,{subType:"authenticated"})})]})},ve=t=>{const{t:s}=h("clients"),{realm:i}=x();return e.jsxs(k,{to:ce({realm:i,clientId:t.id,tab:"settings"}),children:[t.clientId,!t.enabled&&e.jsx(le,{isRead:!0,className:"pf-u-ml-sm",children:s("common:disabled")},`${t.id}-disabled`)]},t.id)},we=t=>e.jsx(te,{wrapModifier:"truncate",children:Q()(t.name)}),Se=t=>e.jsx(te,{wrapModifier:"truncate",children:Q()(t.description)}),Be=t=>{const s=Ie(t,y.baseUrl);return s?e.jsx(pe,{href:s}):"—"},Ee=()=>{const{t}=h("clients"),{realm:s}=x(),{hasAccess:i}=J();return i("manage-clients")?e.jsxs(e.Fragment,{children:[e.jsx(w,{children:e.jsx(I,{component:o=>e.jsx(k,{...o,to:de({realm:s})}),children:t("createClient")})}),e.jsx(w,{children:e.jsx(I,{component:o=>e.jsx(k,{...o,to:me({realm:s})}),variant:"link","data-testid":"importClient",children:t("importClient")})})]}):e.jsx("span",{})};function dt(){const{t}=h("clients"),{addAlert:s,addError:i}=S(),{realm:a}=x(),[o,c]=C.useState(0),l=()=>c(new Date().getTime()),[d,n]=C.useState(),{hasAccess:p}=J(),g=p("manage-clients"),r=async(u,j,T)=>{const P={first:u,max:j};return T&&(P.clientId=T,P.search=!0),await y.clients.find({...P})},f=u=>ee(O({realm:a,tab:u})),L=f("list"),R=f("initial-access-token"),m=f("client-registration"),[K,se]=E({titleKey:t("clientDelete",{clientId:d?.clientId}),messageKey:"clients:clientDeleteConfirm",continueButtonLabel:"common:delete",continueButtonVariant:B.danger,onConfirm:async()=>{try{await y.clients.del({id:d.id}),s(t("clientDeletedSuccess"),Y.success),l()}catch(u){i("clients:clientDeleteError",u)}}});return e.jsxs(e.Fragment,{children:[e.jsx(ue,{titleKey:"clients:clientList",subKey:"clients:clientsExplain",helpUrl:ae.clientsUrl,divider:!1}),e.jsx(oe,{variant:"light",className:"pf-u-p-0",children:e.jsxs(U,{mountOnEnter:!0,isBox:!0,defaultLocation:O({realm:a,tab:"list"}),children:[e.jsxs(D,{"data-testid":"list",title:e.jsx(A,{children:t("clientsList")}),...L,children:[e.jsx(se,{}),e.jsx(F,{loader:r,isPaginated:!0,ariaLabelKey:"clients:clientList",searchPlaceholderKey:"clients:searchForClient",toolbarItem:e.jsx(Ee,{}),actionResolver:u=>{const j=u.data,T=[{title:t("common:export"),onClick(){re(j)}}];return!De(j)&&(g||j.access?.configure)&&T.push({title:t("common:delete"),onClick(){n(j),K()}}),T},columns:[{name:"clientId",displayKey:"common:clientId",transforms:[b(20)],cellRenderer:ve},{name:"clientName",displayKey:"common:clientName",transforms:[b(20)],cellRenderer:we},{name:"protocol",displayKey:"common:type",transforms:[b(10)],cellRenderer:u=>Ae(t,u.protocol??"openid-connect")},{name:"description",displayKey:"common:description",transforms:[b(30)],cellRenderer:Se},{name:"baseUrl",displayKey:"clients:homeURL",transforms:[b(20)],cellRenderer:Be}]},o)]}),e.jsx(D,{"data-testid":"initialAccessToken",title:e.jsx(A,{children:t("initialAccessToken")}),...R,children:e.jsx(Le,{})}),e.jsx(D,{"data-testid":"registration",title:e.jsx(A,{children:t("clientRegistration")}),...m,children:e.jsx(Pe,{})})]})})]})}export{dt as default};
//# sourceMappingURL=ClientsSection-29f6917b.js.map




© 2015 - 2024 Weber Informatics LLC | Privacy Policy