D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
usr
/
share
/
grafana
/
public
/
build
/
Filename :
UserListPage.6465e04cf2651e47d4c5.js
back
Copy
"use strict";(self.webpackChunkgrafana=self.webpackChunkgrafana||[]).push([[7497,8039],{12048:(be,O,n)=>{n.r(O),n.d(O,{default:()=>u});var a=n(42844),e=n(27702),x=n(74639),B=n(34667),$=n(80978),D=n(54281),h=n(66310),R=n(15372),M=n(91368),E=n(44644),b=n(18771),W=n(27932),z=n(27173),K=n(33716),V=n(40705),y=n(66670),v=n(80011),f=n(73453),I=n(50852),Q=n(8311),G=n(66574),j=n(95685),c=n(64544);const A=[],T=t=>{A.push(t)},Z=x.wl.pages.UserListPage.UserListAdminPage,N={fetchUsers:c.uh,changeQuery:c.R5,changePage:c.oO,changeFilter:c.M6},se=t=>({users:t.userListAdmin.users,query:t.userListAdmin.query,showPaging:t.userListAdmin.showPaging,totalPages:t.userListAdmin.totalPages,page:t.userListAdmin.page,filters:t.userListAdmin.filters,isLoading:t.userListAdmin.isLoading}),k=(0,z.connect)(se,N)(({fetchUsers:t,query:o,changeQuery:l,users:i,showPaging:d,totalPages:g,page:Y,changePage:te,changeFilter:ae,filters:ne,isLoading:pe})=>{const U=(0,h.wW)(w);(0,e.useEffect)(()=>{t()},[t]);const J=(0,e.useMemo)(()=>i.some(L=>L.licensedRole),[i]);return e.createElement(E.T.Contents,null,e.createElement("div",{className:"page-action-bar","data-testid":Z.container},e.createElement("div",{className:"gf-form gf-form--grow"},e.createElement(K.H,{placeholder:"Search user by login, email, or name.",autoFocus:!0,value:o,onChange:l}),e.createElement(V.S,{options:[{label:"All users",value:!1},{label:"Active last 30 days",value:!0}],onChange:L=>ae({name:"activeLast30Days",value:L}),value:ne.find(L=>L.name==="activeLast30Days")?.value,className:U.filter}),A.map((L,Ue)=>e.createElement(L,{key:Ue,filters:ne,onChange:ae,className:U.filter}))),G.Vt.hasPermission(b.AccessControlAction.UsersCreate)&&e.createElement(y.Qj,{href:"admin/users/create",variant:"primary"},"New user")),pe?e.createElement(j.Z,null):e.createElement(e.Fragment,null,e.createElement("div",{className:(0,a.cx)(U.table,"admin-list-table")},e.createElement("table",{className:"filter-table form-inline filter-table--hover"},e.createElement("thead",null,e.createElement("tr",null,e.createElement("th",null),e.createElement("th",null,"Login"),e.createElement("th",null,"Email"),e.createElement("th",null,"Name"),e.createElement("th",null,"Belongs to"),J&&e.createElement("th",null,"Licensed role"," ",e.createElement(v.u,{placement:"top",content:e.createElement(e.Fragment,null,"Licensed role is based on a user's Org role (i.e. Viewer, Editor, Admin) and their dashboard/folder permissions."," ",e.createElement("a",{className:U.link,target:"_blank",rel:"noreferrer noopener",href:"https://grafana.com/docs/grafana/next/enterprise/license/license-restrictions/#active-users-limit"},"Learn more"))},e.createElement(f.J,{name:"question-circle"}))),e.createElement("th",null,"Last active\xA0",e.createElement(v.u,{placement:"top",content:"Time since user was seen using Grafana"},e.createElement(f.J,{name:"question-circle"}))),e.createElement("th",{style:{width:"1%"}},"Origin"))),e.createElement("tbody",null,i.map(L=>e.createElement(q,{user:L,showLicensedRole:J,key:L.id}))))),d&&e.createElement(I.t,{numberOfPages:g,currentPage:Y,onNavigate:te})))});function S(){return React.createElement(Page,{navId:"global-users"},React.createElement(k,null))}const p=t=>`Edit user's ${t} details`,q=(0,e.memo)(({user:t,showLicensedRole:o})=>{const l=(0,h.wW)(w),i=`admin/users/edit/${t.id}`;return e.createElement("tr",{key:t.id},e.createElement("td",{className:"width-4 text-center link-td"},e.createElement("a",{href:i,"aria-label":`Edit user's ${t.name} details`},e.createElement("img",{className:"filter-table__avatar",src:t.avatarUrl,alt:`Avatar for user ${t.name}`}))),e.createElement("td",{className:"link-td max-width-10"},e.createElement("a",{className:"ellipsis",href:i,title:t.login,"aria-label":p(t.name)},t.login)),e.createElement("td",{className:"link-td max-width-10"},e.createElement("a",{className:"ellipsis",href:i,title:t.email,"aria-label":p(t.name)},t.email)),e.createElement("td",{className:"link-td max-width-10"},e.createElement("a",{className:"ellipsis",href:i,title:t.name,"aria-label":p(t.name)},t.name)),e.createElement("td",{className:l.row,title:t.orgs?.length?`The user is a member of the following organizations: ${t.orgs.map(d=>d.name).join(",")}`:void 0},e.createElement(le,{units:t.orgs,icon:"building"}),t.isAdmin&&e.createElement("a",{href:i,"aria-label":p(t.name)},e.createElement(v.u,{placement:"top",content:"Grafana Admin"},e.createElement(f.J,{name:"shield"})))),o&&e.createElement("td",{className:(0,a.cx)("link-td",l.iconRow)},e.createElement("a",{className:"ellipsis",href:i,title:t.name,"aria-label":p(t.name)},t.licensedRole==="None"?e.createElement("span",{className:l.disabled},"Not assigned"," ",e.createElement(v.u,{placement:"top",content:"A licensed role will be assigned when this user signs in"},e.createElement(f.J,{name:"question-circle"}))):t.licensedRole)),e.createElement("td",{className:"link-td"},t.lastSeenAtAge&&e.createElement("a",{href:i,"aria-label":`Last seen at ${t.lastSeenAtAge}. Follow to edit user's ${t.name} details.`},t.lastSeenAtAge==="10 years"?e.createElement("span",{className:l.disabled},"Never"):t.lastSeenAtAge)),e.createElement("td",{className:"text-right"},Array.isArray(t.authLabels)&&t.authLabels.length>0&&e.createElement(Q.e,{label:t.authLabels[0],removeIcon:!1,count:0})),e.createElement("td",{className:"text-right"},t.isDisabled&&e.createElement("span",{className:"label label-tag label-tag--gray"},"Disabled")))});q.displayName="UserListItem";const le=({units:t,icon:o})=>{const l=(0,h.wW)(w);return t?.length?t.length>1?e.createElement(v.u,{placement:"top",content:e.createElement("div",{className:l.unitTooltip},t?.map(i=>e.createElement("a",{href:i.url,className:l.link,title:i.name,key:i.name,"aria-label":`Edit ${i.name}`},i.name)))},e.createElement("div",{className:l.unitItem},e.createElement(f.J,{name:o})," ",e.createElement("span",null,t.length))):e.createElement("a",{href:t[0].url,className:l.unitItem,title:t[0].name,key:t[0].name,"aria-label":`Edit ${t[0].name}`},e.createElement(f.J,{name:o})," ",t[0].name):null},w=t=>({table:(0,a.css)` margin-top: ${t.spacing(3)}; `,filter:(0,a.css)` margin: 0 ${t.spacing(1)}; `,iconRow:(0,a.css)` svg { margin-left: ${t.spacing(.5)}; } `,row:(0,a.css)` display: flex; align-items: center; height: 100% !important; a { padding: ${t.spacing(.5)} 0 !important; } `,unitTooltip:(0,a.css)` display: flex; flex-direction: column; `,unitItem:(0,a.css)` cursor: pointer; padding: ${t.spacing(.5)} 0; margin-right: ${t.spacing(1)}; `,disabled:(0,a.css)` color: ${t.colors.text.disabled}; `,link:(0,a.css)` color: inherit; cursor: pointer; text-decoration: underline; `}),Pe=null;var re=n(64022),ce=n(65333),F=n(39705),H=n(13741),oe=n(52419),ie=n(60729),me=n(51727);const de=x.wl.pages.UserListPage.UsersListPublicDashboardsPage.DashboardsListModal,ge=({email:t,onDismiss:o})=>{const l=(0,h.wW)(ue),{data:i,isLoading:d}=(0,F.Bl)(t);return e.createElement(H.u,{className:l.modal,isOpen:!0,title:"Public dashboards",onDismiss:o},d?e.createElement("div",{className:l.loading},e.createElement(oe.u,{text:"Loading..."})):i?.map(g=>e.createElement("div",{key:g.dashboardUid,className:l.listItem,"data-testid":de.listItem(g.dashboardUid)},e.createElement("p",{className:l.dashboardTitle},g.dashboardTitle),e.createElement("div",{className:l.urlsContainer},e.createElement("a",{rel:"noreferrer",target:"_blank",className:(0,a.cx)("external-link",l.url),href:(0,me._M)(g.publicDashboardAccessToken),onClick:o},"Public dashboard URL"),e.createElement("span",{className:l.urlsDivider},"\u2022"),e.createElement("a",{className:(0,a.cx)("external-link",l.url),href:(0,me.Ez)(g.dashboardUid),onClick:o},"Public dashboard settings")),e.createElement("hr",{className:l.divider}))))},Ee=({email:t})=>e.createElement(ie.JY,null,({showModal:o,hideModal:l})=>e.createElement(y.zx,{variant:"secondary",size:"sm",icon:"question-circle",title:"Open dashboards list","aria-label":"Open dashboards list",onClick:()=>o(ge,{email:t,onDismiss:l})})),ue=t=>({modal:(0,a.css)` width: 590px; `,loading:(0,a.css)` display: flex; justify-content: center; `,listItem:(0,a.css)` display: flex; flex-direction: column; gap: ${t.spacing(.5)}; `,divider:(0,a.css)` margin: ${t.spacing(1.5,0)}; color: ${t.colors.text.secondary}; `,urlsContainer:(0,a.css)` display: flex; gap: ${t.spacing(.5)}; ${t.breakpoints.down("sm")} { flex-direction: column; } `,urlsDivider:(0,a.css)` color: ${t.colors.text.secondary}; ${t.breakpoints.down("sm")} { display: none; } `,dashboardTitle:(0,a.css)` font-size: ${t.typography.body.fontSize}; font-weight: ${t.typography.fontWeightBold}; margin-bottom: 0; `,url:(0,a.css)` font-size: ${t.typography.body.fontSize}; `}),he=({user:t,onDismiss:o})=>{const l=(0,h.wW)(_);return e.createElement(H.u,{className:l.modal,isOpen:!0,title:"Delete",onDismiss:o},e.createElement("p",{className:l.description},"The user ",t.email," is currently present in ",t.totalDashboards," public dashboard(s). If you wish to remove this user, please navigate to the settings of the corresponding public dashboard."),e.createElement(H.u.ButtonRow,null,e.createElement(y.zx,{type:"button",variant:"secondary",onClick:o,fill:"outline"},"Close")))},ve=({user:t})=>e.createElement(ie.JY,null,({showModal:o,hideModal:l})=>e.createElement(y.zx,{size:"sm",variant:"destructive",onClick:()=>o(he,{user:t,onDismiss:l}),icon:"times","aria-label":"Delete user",title:"Delete user"})),_=t=>({modal:(0,a.css)` width: 500px; `,description:(0,a.css)` font-size: ${t.typography.body.fontSize}; margin: 0; `}),ee=x.wl.pages.UserListPage.publicDashboards,fe=()=>{const{data:t,isLoading:o}=(0,F.jI)();return e.createElement(E.T.Contents,{isLoading:o},e.createElement("table",{className:"filter-table form-inline","data-testid":ee.container},e.createElement("thead",null,e.createElement("tr",null,e.createElement("th",null,"Email"),e.createElement("th",null,e.createElement("span",null,"Activated "),e.createElement(v.u,{placement:"top",content:"Earliest time user has been an active user to a dashboard"},e.createElement(f.J,{name:"question-circle"}))),e.createElement("th",null,"Origin"),e.createElement("th",null,"Role"),e.createElement("th",null))),e.createElement("tbody",null,t?.map(l=>e.createElement("tr",{key:l.email},e.createElement("td",{className:"max-width-10"},e.createElement("span",{className:"ellipsis",title:l.email},l.email)),e.createElement("td",{className:"max-width-10"},l.firstSeenAtAge),e.createElement("td",{className:"max-width-10"},e.createElement(re.Lh,{spacing:"sm"},e.createElement("span",null,l.totalDashboards," dashboard(s)"),e.createElement(Ee,{email:l.email}))),e.createElement("td",{className:"max-width-10"},e.createElement(ce.V,{name:"Viewer",colorIndex:19})),e.createElement("td",{className:"text-right"},e.createElement(ve,{user:l})))))))};var s=(t=>(t.ADMIN="admin",t.ORG="org",t.PUBLIC_DASHBOARDS="public-dashboards",t))(s||{});const r=x.wl.pages.UserListPage,m=({view:t,setView:o})=>e.createElement(D.O,{label:"Public dashboard users",active:t==="public-dashboards",onChangeTab:()=>o("public-dashboards"),"data-testid":r.tabs.publicDashboardsUsers}),P={admin:e.createElement(k,null),org:e.createElement(W.UsersListPageContent,null),["public-dashboards"]:e.createElement(fe,null)};function u(){const t=(0,h.wW)(C),o=M.contextSrv.hasAccess(b.AccessControlAction.UsersRead,M.contextSrv.isGrafanaAdmin),l=M.contextSrv.hasPermission(b.AccessControlAction.OrgUsersRead),i=!!B.config.featureToggles.publicDashboards&&!!B.config.featureToggles.publicDashboardsEmailSharing&&(0,$.v)("publicDashboardsEmailSharing"),[d,g]=(0,e.useState)(()=>o?"admin":l?"org":null),Y=l&&o;return e.createElement(E.T,{navId:"global-users"},Y?e.createElement(R.J,{className:t.tabsMargin},e.createElement(D.O,{label:"All users",active:d==="admin",onChangeTab:()=>g("admin"),"data-testid":r.tabs.allUsers}),e.createElement(D.O,{label:"Organization users",active:d==="org",onChangeTab:()=>g("org"),"data-testid":r.tabs.orgUsers}),i&&e.createElement(m,{view:d,setView:g})):i&&e.createElement(R.J,{className:t.tabsMargin},e.createElement(D.O,{label:"Users",active:d==="org",onChangeTab:()=>g("org"),"data-testid":r.tabs.users}),e.createElement(m,{view:d,setView:g})),d?P[d]:e.createElement(W.UsersListPageContent,null))}const C=t=>({tabsMargin:(0,a.css)({marginBottom:t.spacing(3)})})},27932:(be,O,n)=>{n.r(O),n.d(O,{UsersListPageContent:()=>ee,UsersListPageUnconnected:()=>_,default:()=>fe});var a=n(27702),e=n(27173),x=n(18112),B=n(74639),$=n(64022),D=n(50852),h=n(44644),R=n(66574),M=n(71585),E=n(66670),b=n(54422);const W={revokeInvite:b.GY},z=(0,e.connect)(null,W);class K extends a.PureComponent{render(){const{invitee:r,revokeInvite:m}=this.props;return a.createElement("tr",null,a.createElement("td",null,r.email),a.createElement("td",null,r.name),a.createElement("td",{className:"text-right"},a.createElement(M.m,{icon:"copy",variant:"secondary",size:"sm",getText:()=>r.url},"Copy Invite"),"\xA0"),a.createElement("td",null,a.createElement(E.zx,{variant:"destructive",size:"sm",icon:"times",onClick:()=>m(r.code),"aria-label":"Revoke Invite"})))}}const V=z(K);class y extends a.PureComponent{render(){const{invitees:r}=this.props;return a.createElement("table",{className:"filter-table form-inline"},a.createElement("thead",null,a.createElement("tr",null,a.createElement("th",null,"Email"),a.createElement("th",null,"Name"),a.createElement("th",null),a.createElement("th",{style:{width:"34px"}}))),a.createElement("tbody",{"data-testid":"InviteesTable-body"},r.map((m,P)=>a.createElement(V,{key:`${m.id}-${P}`,invitee:m}))))}}var v=n(75892),f=n(67198);const{selectAll:I,selectById:Q,selectTotal:G}=f.selectors,j=(s,r)=>r,c=(0,v.P1)([I,j],(s,r)=>{const m=new RegExp(r,"i");return s.filter(u=>m.test(u.name)||m.test(u.email))});var A=n(48024),T=n(33716),Z=n(40705),N=n(12308),se=n(18771),ye=n(89949),X=n(73289),k=n(92317),S=n(17632);function p(){return async(s,r)=>{try{const{perPage:m,page:P,searchQuery:u}=r().users,C=await(0,X.i)().get("/api/org/users/search",(0,k.y)({perpage:m,page:P,query:u}));s((0,S.eT)(C))}catch{(0,S.k7)()}}}const q=(0,ye.debounce)(s=>s(p()),300);function le(s){return async r=>{await(0,X.i)().patch(`/api/org/users/${s.userId}`,{role:s.role}),r(p())}}function w(s){return async r=>{await(0,X.i)().delete(`/api/org/users/${s}`),r(p())}}function Pe(s){return async r=>{r((0,S.tZ)()),r((0,S.PJ)(s)),r(p())}}function re(s){return async r=>{r((0,S.tZ)()),r((0,S.w4)(s)),q(r)}}const ce=s=>{const r=new RegExp(s.searchQuery,"i");return s.users.filter(m=>r.test(m.login)||r.test(m.email)||r.test(m.name))},F=s=>s.searchQuery;function H(s){return{searchQuery:F(s.users),pendingInvitesCount:G(s.invites),externalUserMngLinkName:s.users.externalUserMngLinkName,externalUserMngLinkUrl:s.users.externalUserMngLinkUrl,canInvite:s.users.canInvite}}const oe={changeSearchQuery:re},de=(0,e.connect)(H,oe)(({canInvite:s,externalUserMngLinkName:r,externalUserMngLinkUrl:m,searchQuery:P,pendingInvitesCount:u,changeSearchQuery:C,onShowInvites:t,showInvites:o})=>{const l=[{label:"Users",value:"users"},{label:`Pending Invites (${u})`,value:"invites"}],d=R.Vt.hasAccess(se.AccessControlAction.OrgUsersAdd,s)&&!(N.default.disableLoginForm&&N.default.externalUserMngInfo);return a.createElement("div",{className:"page-action-bar","data-testid":"users-action-bar"},a.createElement(A._,{grow:!0},a.createElement(T.H,{value:P,onChange:C,placeholder:"Search user by login, email or name"})),u>0&&a.createElement("div",{style:{marginLeft:"1rem"}},a.createElement(Z.S,{value:o?"invites":"users",options:l,onChange:t})),d&&a.createElement(E.Qj,{href:"org/users/invite"},"Invite"),m&&a.createElement(E.Qj,{href:m,target:"_blank",rel:"noopener"},r))});var ge=n(56071);function Ee(s){const r=F(s.users);return{users:ce(s.users),searchQuery:F(s.users),page:s.users.page,totalPages:s.users.totalPages,perPage:s.users.perPage,invitees:c(s.invites,r),externalUserMngInfo:s.users.externalUserMngInfo,isLoading:s.users.isLoading}}const ue={loadUsers:p,fetchInvitees:b.nW,changePage:Pe,updateUser:le,removeUser:w},he=(0,e.connect)(Ee,ue),ve=B.wl.pages.UserListPage.UsersListPage,_=({users:s,page:r,totalPages:m,invitees:P,externalUserMngInfo:u,isLoading:C,loadUsers:t,fetchInvitees:o,changePage:l,updateUser:i,removeUser:d})=>{const[g,Y]=(0,a.useState)(!1),te=u?(0,x.a)(u):"";(0,a.useEffect)(()=>{t(),o()},[o,t]);const ae=(U,J)=>{i({...J,role:U})},ne=()=>{Y(!g)},pe=()=>g?a.createElement(y,{invitees:P}):a.createElement($.wc,{spacing:"md","data-testid":ve.container},a.createElement(ge.P,{users:s,orgId:R.Vt.user.orgId,onRoleChange:(U,J)=>ae(U,J),onRemoveUser:U=>d(U.userId)}),a.createElement($.Lh,{justify:"flex-end"},a.createElement(D.t,{onNavigate:l,currentPage:r,numberOfPages:m,hideWhenSinglePage:!0})));return a.createElement(h.T.Contents,{isLoading:!C},a.createElement(de,{onShowInvites:ne,showInvites:g}),te&&a.createElement("div",{className:"grafana-info-box",dangerouslySetInnerHTML:{__html:te}}),C&&pe())},ee=he(_);function fe(){return a.createElement(h.T,{navId:"users"},a.createElement(ee,null))}},56071:(be,O,n)=>{n.d(O,{P:()=>K});var a=n(27702),e=n(80011),x=n(73453),B=n(66670),$=n(3613),D=n(75574),h=n(11349),R=n(8311),M=n(12308),E=n(66574),b=n(18771),W=n(8237);const z=`This user's role is not editable because it is synchronized from your auth provider. Refer to the Grafana authentication docs for details.`,K=({users:V,orgId:y,onRoleChange:v,onRemoveUser:f})=>{const[I,Q]=(0,a.useState)(null),[G,j]=(0,a.useState)([]);return(0,a.useEffect)(()=>{async function c(){try{if(E.Vt.hasPermission(b.AccessControlAction.ActionRolesList)){let A=await(0,h.ul)(y);j(A)}}catch{console.error("Error loading options")}}E.Vt.licensedAccessControlEnabled()&&c()},[y]),a.createElement(a.Fragment,null,a.createElement("table",{className:"filter-table form-inline"},a.createElement("thead",null,a.createElement("tr",null,a.createElement("th",null),a.createElement("th",null,"Login"),a.createElement("th",null,"Email"),a.createElement("th",null,"Name"),a.createElement("th",null,"Seen"),a.createElement("th",null,"Role"),a.createElement("th",null),a.createElement("th",{style:{width:"34px"}}),a.createElement("th",null,"Origin"),a.createElement("th",null))),a.createElement("tbody",null,V.map((c,A)=>{let T=!E.Vt.hasPermissionInMetadata(b.AccessControlAction.OrgUsersWrite,c);return((Array.isArray(c.authLabels)&&c.authLabels.length>0?c.authLabels[0]:"")!=="grafana.com"||M.default.featureToggles.gcomOnlyExternalOrgRoleSync)&&(T=c?.isExternallySynced||T),a.createElement("tr",{key:`${c.userId}-${A}`},a.createElement("td",{className:"width-2 text-center"},a.createElement("img",{className:"filter-table__avatar",src:c.avatarUrl,alt:"User avatar"})),a.createElement("td",{className:"max-width-6"},a.createElement("span",{className:"ellipsis",title:c.login},c.login)),a.createElement("td",{className:"max-width-5"},a.createElement("span",{className:"ellipsis",title:c.email},c.email)),a.createElement("td",{className:"max-width-5"},a.createElement("span",{className:"ellipsis",title:c.name},c.name)),a.createElement("td",{className:"width-1"},c.lastSeenAtAge),a.createElement("td",{className:"width-8"},E.Vt.licensedAccessControlEnabled()?a.createElement(D.R,{userId:c.userId,orgId:y,roleOptions:G,basicRole:c.role,onBasicRoleChange:N=>v(N,c),basicRoleDisabled:T,basicRoleDisabledMessage:z}):a.createElement(W.A,{"aria-label":"Role",value:c.role,disabled:T,onChange:N=>v(N,c)})),a.createElement("td",null,T&&a.createElement("div",{style:{display:"flex",alignItems:"center"}},a.createElement(e.u,{content:z},a.createElement(x.J,{name:"question-circle",style:{marginLeft:"8px"}})))),a.createElement("td",{className:"width-1 text-center"},c.isDisabled&&a.createElement("span",{className:"label label-tag label-tag--gray"},"Disabled")),a.createElement("td",{className:"width-1"},Array.isArray(c.authLabels)&&c.authLabels.length>0&&a.createElement(R.e,{label:c.authLabels[0],removeIcon:!1,count:0})),E.Vt.hasPermissionInMetadata(b.AccessControlAction.OrgUsersRemove,c)&&a.createElement("td",{className:"text-right"},a.createElement(B.zx,{size:"sm",variant:"destructive",onClick:()=>{Q(c)},icon:"times","aria-label":"Delete user"})))}))),!!I&&a.createElement($.s,{body:`Are you sure you want to delete user ${I?.login}?`,confirmText:"Delete",title:"Delete",onDismiss:()=>{Q(null)},isOpen:!0,onConfirm:()=>{I&&(f(I),Q(null))}}))}}}]); //# sourceMappingURL=UserListPage.6465e04cf2651e47d4c5.js.map