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

theme.keycloak.v2.admin.resources.assets.DynamicComponents-fe8010c1.js Maven / Gradle / Ivy

There is a newer version: 25.0.1
Show newest version
import{u as f,a as C,j as e,F as j,h as g,C as b,S as G,r as v,O as E,B as L,cH as w,aA as M,R as B,U as V,ad as K}from"./index-0cda761d.js";import{C as D}from"./ClientSelect-ab12f3f6.js";import{F as U}from"./FileUpload-2469f593.js";import{G as _}from"./GroupPickerDialog-9d38b823.js";import{C as J,c as O,S as A,a as N,b as P}from"./Select-68736f55.js";import{A as q,a as H}from"./ActionListItem-c859aeaf.js";import{F as k}from"./Flex-a3793595.js";import{F as T}from"./FlexItem-742749b8.js";import{M as W}from"./minus-circle-icon-ac3563ca.js";import{P as z}from"./plus-circle-icon-fe78809e.js";import{M as Q}from"./MultiLineInput-05f00b93.js";import{P as X}from"./PasswordInput-bb06acaa.js";import{u as Y}from"./useToggle-3764a2a4.js";import{A as Z,S as ee}from"./AddRoleMappingModal-71c36ce9.js";import{C as te,L as ne}from"./CodeEditor-781232a0.js";import{K as ae}from"./KeycloakTextInput-ada01047.js";import{K as oe}from"./KeycloakTextArea-9049d04c.js";const se=({name:t,label:n,helpText:i,isDisabled:a=!1,defaultValue:l,isNew:s=!0})=>{const{t:o}=f("dynamic"),{control:r}=C();return e.jsx(j,{hasNoPaddingTop:!0,label:o(n),fieldId:t,labelIcon:e.jsx(g,{helpText:o(i),fieldLabelId:`dynamic:${n}`}),children:e.jsx(b,{name:h(t),"data-testid":t,defaultValue:s?l:!1,control:r,render:({field:p})=>e.jsx(G,{id:t,isDisabled:a,label:o("common:on"),labelOff:o("common:off"),isChecked:p.value==="true"||p.value===!0||p.value?.[0]==="true",onChange:d=>p.onChange(""+d),"data-testid":t,"aria-label":o(n)})})})},le=t=>e.jsx(D,{...t,name:h(t.name),namespace:"dynamic"}),re=({name:t,label:n,helpText:i,defaultValue:a,isDisabled:l=!1})=>{const{t:s}=f("dynamic"),{control:o}=C(),[r,p]=v.useState(""),[d,u]=v.useState(!1);return e.jsx(j,{label:s(n),labelIcon:e.jsx(g,{helpText:s(i),fieldLabelId:`dynamic:${n}`}),fieldId:t,children:e.jsx(b,{name:h(t),control:o,defaultValue:a||"",render:({field:c})=>e.jsx(U,{id:t,value:c.value,type:"text",filename:r,isDisabled:l,onFileInputChange:(I,y)=>p(y.name),onReadStarted:()=>u(!0),onReadFinished:()=>u(!1),onClearClick:()=>{c.onChange(""),p("")},isLoading:d,allowEditingUploadedText:!1,onChange:(I,y)=>{c.onChange(I),p(y)}})})})},ie=({name:t,label:n,helpText:i})=>{const{t:a}=f("dynamic"),[l,s]=v.useState(!1),[o,r]=v.useState(),{control:p}=C();return e.jsx(b,{name:h(t),defaultValue:"",control:p,render:({field:d})=>e.jsxs(e.Fragment,{children:[l&&e.jsx(_,{type:"selectOne",text:{title:"dynamic:selectGroup",ok:"common:select"},onConfirm:u=>{d.onChange(u?.[0].path),r(u),s(!1)},onClose:()=>s(!1),filterGroups:o}),e.jsx(j,{label:a(n),labelIcon:e.jsx(g,{helpText:a(i),fieldLabelId:`dynamic:${n}`}),fieldId:t,children:e.jsxs(E,{children:[e.jsx(J,{children:d.value&&e.jsx(O,{onClick:()=>d.onChange(void 0),children:d.value})}),e.jsx(L,{id:"kc-join-groups-button",onClick:()=>s(!l),variant:"secondary","data-testid":"join-groups-button",children:a("selectGroup")})]})})]})})},ce=({name:t,label:n,helpText:i,defaultValue:a,options:l,isDisabled:s=!1})=>{const{t:o}=f("dynamic"),{control:r}=C(),[p,d]=v.useState(!1);return e.jsx(j,{label:o(n),labelIcon:e.jsx(g,{helpText:o(i),fieldLabelId:`dynamic:${n}`}),fieldId:t,children:e.jsx(b,{name:h(t),"data-testid":t,defaultValue:a||l?.[0]||"",control:r,render:({field:u})=>e.jsx(A,{toggleId:t,isDisabled:s,onToggle:c=>d(c),onSelect:(c,I)=>{u.onChange(I),d(!1)},selections:u.value,variant:N.single,"aria-label":o(n),isOpen:p,children:l?.map(c=>e.jsx(P,{selected:c===u.value,value:c},c))})})})},de=({name:t,label:n,helpText:i})=>{const{t:a}=f("dynamic"),{getValues:l,setValue:s,register:o}=C(),[r,p]=v.useState([]),d=h(t);v.useEffect(()=>{o(d);const m=JSON.parse(l(d)||"[]");m.length||m.push({key:"",value:""}),p(m.map(x=>({...x,id:w()})))},[o,l]);const u=(m=r)=>{s(d,JSON.stringify(m.map(({id:x,...S})=>S)))},c=(m,x)=>{y(m,{...r[m],key:x})},I=(m,x)=>{y(m,{...r[m],value:x})},y=(m,x)=>p([...r.slice(0,m),x,...r.slice(m+1)]),$=m=>{const x=[...r.slice(0,m),...r.slice(m+1)];p(x),u(x)};return e.jsxs(j,{label:a(n),labelIcon:e.jsx(g,{helpText:a(i),fieldLabelId:`dynamic:${n}`}),fieldId:t,children:[e.jsxs(k,{direction:{default:"column"},children:[e.jsxs(k,{children:[e.jsx(T,{grow:{default:"grow"},spacer:{default:"spacerNone"},children:e.jsx("strong",{children:a("common:key")})}),e.jsx(T,{grow:{default:"grow"},children:e.jsx("strong",{children:a("common:value")})})]}),r.map((m,x)=>e.jsxs(k,{"data-testid":"row",children:[e.jsx(T,{grow:{default:"grow"},children:e.jsx(M,{name:`${d}.${x}.key`,placeholder:a("common:keyPlaceholder"),"aria-label":a("key"),defaultValue:m.key,"data-testid":`${d}.${x}.key`,onChange:S=>c(x,S),onBlur:()=>u()})}),e.jsx(T,{grow:{default:"grow"},spacer:{default:"spacerNone"},children:e.jsx(M,{name:`${d}.${x}.value`,placeholder:a("common:valuePlaceholder"),"aria-label":a("common:value"),defaultValue:m.value,"data-testid":`${d}.${x}.value`,onChange:S=>I(x,S),onBlur:()=>u()})}),e.jsx(T,{children:e.jsx(L,{variant:"link",title:a("common:removeAttribute"),isDisabled:r.length===1,onClick:()=>$(x),"data-testid":`${d}.${x}.remove`,children:e.jsx(W,{})})})]},m.id))]}),e.jsx(q,{children:e.jsx(H,{children:e.jsx(L,{"data-testid":`${d}-add-row`,className:"pf-u-px-0 pf-u-mt-sm",variant:"link",icon:e.jsx(z,{}),onClick:()=>p([...r,{key:"",value:"",id:w()}]),children:a("common:addAttribute")})})})]})},ue=({name:t,label:n,helpText:i,defaultValue:a,options:l,isDisabled:s=!1})=>{const{t:o}=f("dynamic"),{control:r}=C(),[p,d]=v.useState(!1);return e.jsx(j,{label:o(n),labelIcon:e.jsx(g,{helpText:o(i),fieldLabelId:`dynamic:${n}`}),fieldId:t,children:e.jsx(b,{name:h(t),control:r,defaultValue:a?[a]:[],render:({field:u})=>e.jsx(A,{toggleId:t,"data-testid":t,isDisabled:s,chipGroupProps:{numChips:3,expandedText:o("common:hide"),collapsedText:o("common:showRemaining")},variant:N.typeaheadMulti,typeAheadAriaLabel:"Select",onToggle:c=>d(c),selections:u.value,onSelect:(c,I)=>{const y=I.toString();u.value.includes(y)?u.onChange(u.value.filter($=>$!==y)):u.onChange([...u.value,y])},onClear:c=>{c.stopPropagation(),u.onChange([])},isOpen:p,"aria-label":o(n),children:l?.map(c=>e.jsx(P,{value:c},c))})})})},pe=({name:t,label:n,defaultValue:i,helpText:a,stringify:l,isDisabled:s=!1})=>{const{t:o}=f("dynamic"),r=h(t);return e.jsx(j,{label:o(n),labelIcon:e.jsx(g,{helpText:o(a),fieldLabelId:`dynamic:${n}`}),fieldId:t,children:e.jsx(Q,{"aria-label":o(n),name:r,isDisabled:s,defaultValue:[i],addButtonLabel:o("addMultivaluedLabel",{fieldLabel:o(n).toLowerCase()}),stringify:l})})},me=({name:t,label:n,helpText:i,defaultValue:a,isDisabled:l=!1})=>{const{t:s}=f("dynamic"),{register:o}=C();return e.jsx(j,{label:s(n),labelIcon:e.jsx(g,{helpText:s(i),fieldLabelId:`dynamic:${n}`}),fieldId:t,children:e.jsx(X,{id:t,"data-testid":t,isDisabled:l,defaultValue:a?.toString(),...o(h(t))})})},F=t=>t?.includes(".")?t.split("."):["",t||""],xe=t=>t.client?.clientId?`${t.client.clientId}.${t.role.name}`:t.role.name,he=({name:t,label:n,helpText:i,defaultValue:a,isDisabled:l=!1})=>{const{t:s}=f("dynamic"),[o,r]=Y(),{control:p,formState:{errors:d}}=C(),u=h(t);return e.jsx(j,{label:s(n),labelIcon:e.jsx(g,{helpText:s(i),fieldLabelId:`dynamic:${n}`}),validated:d[u]?"error":"default",helperTextInvalid:s("common:required"),fieldId:t,children:e.jsx(b,{name:u,defaultValue:a||"",control:p,render:({field:c})=>e.jsxs(B,{children:[o&&e.jsx(Z,{id:"id",type:"roles",name:t,onAssign:I=>c.onChange(xe(I[0])),onClose:r,isRadio:!0}),c.value!==""&&e.jsx(V,{children:e.jsx(O,{textMaxWidth:"500px",onClick:()=>c.onChange(""),children:e.jsx(ee,{role:{name:F(c.value)[1]},client:{clientId:F(c.value)[0]}})})}),e.jsx(V,{children:e.jsx(L,{onClick:r,variant:"secondary","data-testid":"add-roles",disabled:l,children:s("selectRole.label")})})]})})})},fe=({name:t,label:n,helpText:i,defaultValue:a,isDisabled:l=!1})=>{const{t:s}=f("dynamic"),{control:o}=C();return e.jsx(j,{label:s(n),labelIcon:e.jsx(g,{helpText:e.jsx("span",{style:{whiteSpace:"pre-wrap"},children:i}),fieldLabelId:`dynamic:${n}`}),fieldId:t,children:e.jsx(b,{name:h(t),defaultValue:a,control:o,render:({field:r})=>e.jsx(te,{id:t,"data-testid":t,isReadOnly:l,type:"text",onChange:r.onChange,code:r.value,height:"600px",language:ne.javascript})})})},je=({name:t,label:n,helpText:i,defaultValue:a,isDisabled:l=!1})=>{const{t:s}=f("dynamic"),{register:o}=C();return e.jsx(j,{label:s(n),labelIcon:e.jsx(g,{helpText:s(i),fieldLabelId:`dynamic:${n}`}),fieldId:t,children:e.jsx(ae,{id:t,"data-testid":t,isDisabled:l,defaultValue:a?.toString(),...o(h(t))})})},ge=({name:t,label:n,helpText:i,defaultValue:a,isDisabled:l=!1})=>{const{t:s}=f("dynamic"),{register:o}=C();return e.jsx(j,{label:s(n),labelIcon:e.jsx(g,{helpText:s(i),fieldLabelId:`dynamic:${n}`}),fieldId:t,children:e.jsx(oe,{id:t,"data-testid":t,isDisabled:l,defaultValue:a?.toString(),...o(h(t))})})},R={String:je,Text:ge,boolean:se,List:ce,Role:he,Script:fe,Map:de,Group:ie,ClientList:le,MultivaluedList:ue,MultivaluedString:pe,File:re,Password:me},Ce=t=>t in R,Re=({properties:t,...n})=>e.jsx(e.Fragment,{children:t.map(i=>{const a=i.type;if(Ce(a)){const l=R[a];return e.jsx(l,{...i,...n},i.name)}else console.warn(`There is no editor registered for ${a}`)})}),h=t=>K(`config.${t}`);export{Re as D};
//# sourceMappingURL=DynamicComponents-fe8010c1.js.map




© 2015 - 2024 Weber Informatics LLC | Privacy Policy