substr/directory.ts
Râu Cao d3ad136eab
All checks were successful
CI / Test and lint (push) Successful in 16s
Formatting
2025-06-03 11:38:31 +04:00

39 lines
884 B
TypeScript

// deno-lint-ignore-file require-await
import config from "./config.ts";
import { lookupUsernameByPubkey as ldapLookupUsername } from "./ldap.ts";
import { lookupPubkeyByUsername as ldapLookupPubkey } from "./ldap.ts";
export async function lookupUsernameByPubkey(
pubkey: string,
): Promise<string | undefined> {
let username;
for (const [key, value] of Object.entries(config.staticUsers)) {
if (value === pubkey) {
username = key;
break;
}
}
if (username) {
return username;
} else {
if (config.ldapEnabled) {
return ldapLookupUsername(pubkey);
}
}
}
export async function lookupPubkeyByUsername(
username: string,
): Promise<string | undefined> {
const pubkey = config.staticUsers[username];
if (pubkey) {
return pubkey;
} else {
if (config.ldapEnabled) {
return ldapLookupPubkey(username);
}
}
}