UNPKG

electron-oauth-helper

Version:

Easy to use helper library for OAuth1 and OAuth2.

56 lines 2.28 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); var debug_1 = __importDefault(require("debug")); var helper_1 = require("./helper"); var utils_1 = require("../utils"); var debug = debug_1.default("eoh:oauth1"); var OAuth1Provider = /** @class */ (function () { function OAuth1Provider(config) { this.finished = false; this.config = utils_1.pick(config, [ "oauth_consumer_key", "oauth_consumer_secret", "oauth_callback", ]); this.urls = utils_1.pick(config, [ "request_token_url", "authenticate_url", "access_token_url", ]); } OAuth1Provider.prototype.perform = function (window) { var _this = this; this.finished = false; return new Promise(function (resolve, reject) { // Step 1: Obtaining a request token return helper_1.requestOAuthToken(_this.urls.request_token_url, _this.config) .then(function (oauth_token) { debug("Step 1 response", oauth_token); window.once("close", function () { if (_this.finished === false) { reject(new Error("window closed")); } }); // Step 2: Redirecting the user return helper_1.redirectAuthPage(_this.urls.authenticate_url, _this.config, oauth_token, window); }) .then(function (resp) { debug("Step 2 response", resp); // Step 3: Converting the request token to an access token return helper_1.requestAccessToken(_this.urls.access_token_url, _this.config, resp.oauth_token, resp.oauth_verifier); }) .then(function (resp) { debug("Step 3 response", resp); _this.finished = true; resolve(resp); }) .catch(function (error) { return reject(error); }); }); }; return OAuth1Provider; }()); exports.default = OAuth1Provider; //# sourceMappingURL=index.js.map