UNPKG

google-ads-node

Version:

Google Ads gRPC Client Library for Node

33 lines 2.21 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const google_auth_library_1 = require("google-auth-library"); class Auth { constructor(options) { this.options = options; this.client = this.buildOAuth2Client(this.options.clientId, this.options.clientSecret); this.setRefreshToken(this.options.refreshToken); } async getAccessToken() { try { const { token } = await this.client.getAccessToken(); return token; } catch (err) { throw new Error(`Failed to refresh access token, reason=${err.message}`); } } buildOAuth2Client(clientId, clientSecret) { return new google_auth_library_1.OAuth2Client({ clientId, clientSecret, }); } setRefreshToken(refreshToken) { const credentials = { refresh_token: refreshToken, }; this.client.setCredentials(credentials); } } exports.default = Auth; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvYXV0aC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLDZEQUFnRTtBQVFoRSxNQUFxQixJQUFJO0lBSXZCLFlBQVksT0FBb0I7UUFDOUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUN2RixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVNLEtBQUssQ0FBQyxjQUFjO1FBQ3pCLElBQUk7WUFDRixNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3JELE9BQU8sS0FBZSxDQUFDO1NBQ3hCO1FBQUMsT0FBTyxHQUFHLEVBQUU7WUFDWixNQUFNLElBQUksS0FBSyxDQUFDLDBDQUEwQyxHQUFHLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztTQUMxRTtJQUNILENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxRQUFnQixFQUFFLFlBQW9CO1FBQzlELE9BQU8sSUFBSSxrQ0FBWSxDQUFDO1lBQ3RCLFFBQVE7WUFDUixZQUFZO1NBQ2IsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGVBQWUsQ0FBQyxZQUFvQjtRQUMxQyxNQUFNLFdBQVcsR0FBZ0I7WUFDL0IsYUFBYSxFQUFFLFlBQVk7U0FDNUIsQ0FBQztRQUNGLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzFDLENBQUM7Q0FDRjtBQWhDRCx1QkFnQ0MifQ==