MCPcopy Create free account
hub / github.com/UsefulSoftwareCo/executor / userDirectory

Function userDirectory

apps/host-selfhost/src/admin/admin-users-api.ts:105–132  ·  view source on GitHub ↗
(
  auth: BetterAuthHandle["auth"],
  headers: AdminUsersHeaders,
)

Source from the content-addressed store, hash-verified

103 * coercing it to "" would let an empty `?email=` select an arbitrary row.
104 */
105const userDirectory = (
106 auth: BetterAuthHandle["auth"],
107 headers: AdminUsersHeaders,
108): AdminUserDirectory => ({
109 identities: () =>
110 listMembers(auth, headers).pipe(
111 Effect.map((result) => {
112 const identities = new Map<string, AdminUserIdentity>();
113 for (const member of result.members) {
114 identities.set(member.userId, {
115 email: member.user?.email ?? null,
116 displayName: member.user?.name ?? null,
117 });
118 }
119 return identities;
120 }),
121 ),
122 resolveEmail: (email) =>
123 listMembers(auth, headers).pipe(
124 Effect.map(
125 (result) =>
126 result.members.find((member) => {
127 const stored = member.user?.email;
128 return stored != null && normalizeAdminUserEmail(stored) === email;
129 })?.userId ?? null,
130 ),
131 ),
132});
133
134const withPlatformView = <A, E extends AdminUsersError | AdminUserNotFound = AdminUsersError>(
135 headers: AdminUsersHeaders,

Callers 1

admin-users-api.tsFile · 0.70

Calls 2

listMembersFunction · 0.85
setMethod · 0.80

Tested by

no test coverage detected