( auth: BetterAuthHandle["auth"], headers: AdminUsersHeaders, )
| 103 | * coercing it to "" would let an empty `?email=` select an arbitrary row. |
| 104 | */ |
| 105 | const 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 | |
| 134 | const withPlatformView = <A, E extends AdminUsersError | AdminUserNotFound = AdminUsersError>( |
| 135 | headers: AdminUsersHeaders, |
no test coverage detected