ee-ts-util
Version:
typescript utilities and functions
25 lines • 1.04 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const googleapis_1 = require("googleapis");
exports.buildGSuiteClient = (config, scopes, impersonationEmail) => {
const requiredScopes = scopes || [
"https://www.googleapis.com/auth/admin.directory.user"
];
const client = new googleapis_1.google.auth.JWT(config.clientEmail, undefined, config.privateKey, requiredScopes, impersonationEmail || config.impersonationEmail);
return client;
};
exports.authorize = (gSuiteClient) => {
const alreadyAuthorized = (gSuiteClient.credentials && gSuiteClient.credentials.access_token);
if (alreadyAuthorized) {
return Promise.resolve(gSuiteClient.credentials);
}
return new Promise((resolve, reject) => {
gSuiteClient.authorize((err, tokens) => {
if (err) {
return reject("GSuite Authorization Error -" + err + " " + JSON.stringify(err));
}
return resolve(tokens);
});
});
};
//# sourceMappingURL=client.js.map