export async function fetchUsers()

in src/server/queryUtils.ts [295:340]


export async function fetchUsers(emails: string[]): Promise<any> {
  const qs = emails.map(e => `names=${e}`).join("&");
  return new Promise((resolve, reject) => {
    try {
      request(
        {
          uri: `${BZ_BASE_URI}/user?${qs}`,
          method: "GET",
          qsStringifyOptions: { arrayFormat: "repeat" },
          headers: process.env.BUGZY_BZ_API_KEY
            ? { "X-BUGZILLA-API-KEY": process.env.BUGZY_BZ_API_KEY }
            : {},
        },
        (error, resp, body) => {
          if (error) {
            console.log(error);
            reject(error);
            return;
          }
          let parsed = { users: [] };
          try {
            parsed = JSON.parse(body);
          } catch (e) {
            console.log(body, qs);
            console.error(e);
          }
          parsed.users.forEach(u => {
            for (let key of [
              "groups",
              "saved_searches",
              "saved_reports",
              "ldap_email",
              "requests",
            ]) {
              delete u[key];
            }
          });
          const uri = resp.request.uri.href;
          resolve({ uri, users: parsed.users });
        }
      );
    } catch (e) {
      reject(e);
    }
  });
}