UNPKG

@betha-plataforma/oauth

Version:

Biblioteca JavaScript para lidar com o fluxo do OAuth 2.0 em aplicações Web, com suporte a TypeScript.

41 lines 4.1 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.ImplicitFlow = void 0; const Helpers_1 = require("../../Helpers"); const AuthServerResponseDeserializer_1 = require("../../Parsers/AuthServerResponseDeserializer"); const Handlers_1 = require("../Handlers"); class ImplicitFlow { constructor(api) { this.authorize = (anonymous = false, configs) => { const authorizeUrl = this.getAuthorizeURL(false, anonymous, configs); return Handlers_1.RedirectAuthenticationHandler.navigate(authorizeUrl); }; this.handleAuthorizeResponse = () => __awaiter(this, void 0, void 0, function* () { return this.handleBasicAuthorize(); }); this.silentAuthorize = (anonymous = false) => __awaiter(this, void 0, void 0, function* () { const serializedResponse = yield Handlers_1.IFrameAuthenticationHandler.navigate(this.getAuthorizeURL(true, anonymous)); return this.handleBasicAuthorize(serializedResponse); }); this.handleBasicAuthorize = (serializedResponse = Helpers_1.getHashFragment()) => __awaiter(this, void 0, void 0, function* () { const accessToken = yield AuthServerResponseDeserializer_1.deserializeResponse(serializedResponse); const sessionState = yield AuthServerResponseDeserializer_1.deserializeResponse(serializedResponse); return { accessToken, sessionState }; }); this.getAuthorizeURL = (silent = false, anonymous = false, configs = {}) => { return this.api.authorization.getAuthorizeURL({ response_type: 'token' }, silent, anonymous, configs); }; this.api = api; } } exports.ImplicitFlow = ImplicitFlow; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW1wbGljaXRGbG93LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9Qcm90b2NvbC9GbG93L0ltcGxpY2l0Rmxvdy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFDQSwyQ0FBZ0Q7QUFDaEQsaUdBQW1GO0FBRW5GLDBDQUF5RjtBQUl6RixNQUFhLFlBQVk7SUFHdkIsWUFBWSxHQUFRO1FBSUosY0FBUyxHQUFHLENBQUMsWUFBcUIsS0FBSyxFQUFFLE9BQXFCLEVBQWlCLEVBQUU7WUFDL0YsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUUsU0FBUyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQ3JFLE9BQU8sd0NBQTZCLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzlELENBQUMsQ0FBQztRQUVjLDRCQUF1QixHQUFHLEdBQStCLEVBQUU7WUFDekUsT0FBTyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUNyQyxDQUFDLENBQUEsQ0FBQztRQUVjLG9CQUFlLEdBQUcsQ0FBTyxZQUFxQixLQUFLLEVBQXdCLEVBQUU7WUFDM0YsTUFBTSxrQkFBa0IsR0FBVyxNQUFNLHNDQUEyQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDO1lBRXJILE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDdkQsQ0FBQyxDQUFBLENBQUM7UUFFZSx5QkFBb0IsR0FBRyxDQUN0QyxxQkFBNkIseUJBQWUsRUFBRSxFQUN4QixFQUFFO1lBQ3hCLE1BQU0sV0FBVyxHQUF3QixNQUFNLG9EQUFtQixDQUFDLGtCQUFrQixDQUFDLENBQUM7WUFDdkYsTUFBTSxZQUFZLEdBQXlCLE1BQU0sb0RBQW1CLENBQUMsa0JBQWtCLENBQUMsQ0FBQztZQUN6RixPQUFPLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxDQUFDO1FBQ3ZDLENBQUMsQ0FBQSxDQUFDO1FBRWUsb0JBQWUsR0FBRyxDQUNqQyxTQUFrQixLQUFLLEVBQUUsWUFBcUIsS0FBSyxFQUFFLFVBQXdCLEVBQUUsRUFBVSxFQUFFO1lBRTNGLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLEVBQUUsYUFBYSxFQUFFLE9BQU8sRUFBRSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDeEcsQ0FBQyxDQUFDO1FBOUJBLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDO0lBQ2pCLENBQUM7Q0E4QkY7QUFuQ0Qsb0NBbUNDIn0=