UNPKG

ng-dynami-social-login

Version:

This is social login API for Angular 7.0.3 (Facebook, Google and Linkedin)

117 lines 10.6 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc */ import * as tslib_1 from "tslib"; import { BaseLoginProvider } from "../models/base.login.provider"; import { LoginProviderClassModel } from "../models/login.provider.class.model"; import { SocialUserModel } from "../models/social.user.model"; var LinkedinLoginProvider = /** @class */ (function (_super) { tslib_1.__extends(LinkedinLoginProvider, _super); function LinkedinLoginProvider(clientId) { var _this = _super.call(this) || this; _this.clientId = clientId; _this.loginProviderObj = new LoginProviderClassModel(); _this.loginProviderObj.id = clientId; _this.loginProviderObj.name = 'linkedin'; _this.loginProviderObj.url = 'https://platform.linkedin.com/in.js'; return _this; } /** * @return {?} */ LinkedinLoginProvider.prototype.initialize = /** * @return {?} */ function () { var _this = this; return new Promise(function (resolve, reject) { _this.loadScript(_this.loginProviderObj, function () { IN.init({ api_key: _this.clientId, authorize: true, onLoad: _this.onLinkedInLoad() }); IN.Event.on(IN, 'auth', function () { if (IN.User.isAuthorized()) { IN.API.Raw('/people/~:(id,first-name,last-name,email-address,picture-url)').result(function (res) { resolve(_this.drawUser(res)); }); } }); }); }); }; /** * @return {?} */ LinkedinLoginProvider.prototype.onLinkedInLoad = /** * @return {?} */ function () { IN.Event.on(IN, 'systemReady', function () { IN.User.refresh(); }); }; /** * @param {?} response * @return {?} */ LinkedinLoginProvider.prototype.drawUser = /** * @param {?} response * @return {?} */ function (response) { /** @type {?} */ var user = new SocialUserModel(); user.id = response.emailAddress; user.name = response.firstName + ' ' + response.lastName; user.email = response.emailAddress; user.image = response.pictureUrl; user.token = IN.ENV.auth.oauth_token; return user; }; /** * @return {?} */ LinkedinLoginProvider.prototype.signIn = /** * @return {?} */ function () { var _this = this; return new Promise(function (resolve, reject) { IN.User.authorize(function () { IN.API.Raw('/people/~:(id,first-name,last-name,email-address,picture-url)').result(function (res) { resolve(_this.drawUser(res)); }); }); }); }; /** * @return {?} */ LinkedinLoginProvider.prototype.signOut = /** * @return {?} */ function () { return new Promise(function (resolve, reject) { IN.User.logout(function (response) { resolve(); }, function (err) { reject(err); }); }); }; LinkedinLoginProvider.PROVIDER_ID = 'linkedin'; return LinkedinLoginProvider; }(BaseLoginProvider)); export { LinkedinLoginProvider }; if (false) { /** @type {?} */ LinkedinLoginProvider.PROVIDER_ID; /** @type {?} */ LinkedinLoginProvider.prototype.loginProviderObj; /** @type {?} */ LinkedinLoginProvider.prototype.clientId; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlua2VkaW4ubG9naW4ucHJvdmlkZXIuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZy1keW5hbWktc29jaWFsLWxvZ2luLyIsInNvdXJjZXMiOlsibGliL2R5bmFtaS1zb2NpYWwtbG9naW4vcHJvdmlkZXJzL2xpbmtlZGluLmxvZ2luLnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDL0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBTTlEO0lBQTJDLGlEQUFpQjtJQUsxRCwrQkFBb0IsUUFBZ0I7UUFBcEMsWUFDRSxpQkFBTyxTQUlSO1FBTG1CLGNBQVEsR0FBUixRQUFRLENBQVE7UUFGN0Isc0JBQWdCLEdBQTRCLElBQUksdUJBQXVCLEVBQUUsQ0FBQztRQUkvRSxLQUFJLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxHQUFHLFFBQVEsQ0FBQztRQUNwQyxLQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxHQUFHLFVBQVUsQ0FBQztRQUN4QyxLQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxHQUFHLHFDQUFxQyxDQUFDOztJQUNwRSxDQUFDOzs7O0lBRUQsMENBQVU7OztJQUFWO1FBQUEsaUJBcUJDO1FBcEJDLE9BQU8sSUFBSSxPQUFPLENBQUMsVUFBQyxPQUFPLEVBQUUsTUFBTTtZQUNqQyxLQUFJLENBQUMsVUFBVSxDQUFDLEtBQUksQ0FBQyxnQkFBZ0IsRUFBRTtnQkFDbkMsRUFBRSxDQUFDLElBQUksQ0FBQztvQkFDTixPQUFPLEVBQUUsS0FBSSxDQUFDLFFBQVE7b0JBQ3RCLFNBQVMsRUFBRSxJQUFJO29CQUNmLE1BQU0sRUFBRSxLQUFJLENBQUMsY0FBYyxFQUFFO2lCQUM5QixDQUFDLENBQUM7Z0JBRUgsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLE1BQU0sRUFBRTtvQkFDdEIsSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxFQUFFO3dCQUMxQixFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FDUiwrREFBK0QsQ0FDaEUsQ0FBQyxNQUFNLENBQUUsVUFBQyxHQUEwQjs0QkFDbkMsT0FBTyxDQUFDLEtBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQzt3QkFDOUIsQ0FBQyxDQUFDLENBQUM7cUJBQ0o7Z0JBQ0gsQ0FBQyxDQUFDLENBQUM7WUFFTCxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7OztJQUVELDhDQUFjOzs7SUFBZDtRQUNFLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxhQUFhLEVBQUU7WUFDN0IsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7Ozs7O0lBRUQsd0NBQVE7Ozs7SUFBUixVQUFTLFFBQStCOztZQUNsQyxJQUFJLEdBQW9CLElBQUksZUFBZSxFQUFFO1FBQ2pELElBQUksQ0FBQyxFQUFFLEdBQUcsUUFBUSxDQUFDLFlBQVksQ0FBQztRQUNoQyxJQUFJLENBQUMsSUFBSSxHQUFHLFFBQVEsQ0FBQyxTQUFTLEdBQUcsR0FBRyxHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQUM7UUFDekQsSUFBSSxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUMsWUFBWSxDQUFDO1FBQ25DLElBQUksQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDLFVBQVUsQ0FBQztRQUNqQyxJQUFJLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUNyQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7Ozs7SUFFRCxzQ0FBTTs7O0lBQU47UUFBQSxpQkFRQztRQVBDLE9BQU8sSUFBSSxPQUFPLENBQUMsVUFBQyxPQUFPLEVBQUUsTUFBTTtZQUNqQyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBRTtnQkFDakIsRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsK0RBQStELENBQUMsQ0FBQyxNQUFNLENBQUUsVUFBQyxHQUEwQjtvQkFDN0csT0FBTyxDQUFDLEtBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDOUIsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7OztJQUVELHVDQUFPOzs7SUFBUDtRQUNFLE9BQU8sSUFBSSxPQUFPLENBQUMsVUFBQyxPQUFPLEVBQUUsTUFBTTtZQUNqQyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFDLFFBQWE7Z0JBQzNCLE9BQU8sRUFBRSxDQUFDO1lBQ1osQ0FBQyxFQUFFLFVBQUMsR0FBUTtnQkFDVixNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDZCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQW5Fc0IsaUNBQVcsR0FBRyxVQUFVLENBQUM7SUFxRWxELDRCQUFDO0NBQUEsQUF2RUQsQ0FBMkMsaUJBQWlCLEdBdUUzRDtTQXZFWSxxQkFBcUI7OztJQUVoQyxrQ0FBZ0Q7O0lBQ2hELGlEQUFpRjs7SUFFckUseUNBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUxvZ2luUHJvdmlkZXIgfSBmcm9tIFwiLi4vbW9kZWxzL2Jhc2UubG9naW4ucHJvdmlkZXJcIjtcclxuaW1wb3J0IHsgTG9naW5Qcm92aWRlckNsYXNzTW9kZWwgfSBmcm9tIFwiLi4vbW9kZWxzL2xvZ2luLnByb3ZpZGVyLmNsYXNzLm1vZGVsXCI7XHJcbmltcG9ydCB7IFNvY2lhbFVzZXJNb2RlbCB9IGZyb20gXCIuLi9tb2RlbHMvc29jaWFsLnVzZXIubW9kZWxcIjtcclxuaW1wb3J0IHsgTGlua2VkSW5SZXNwb25zZU1vZGVsIH0gZnJvbSBcIi4uL21vZGVscy9saW5rZWRpbi5yZXNwb25zZS5tb2RlbFwiO1xyXG5cclxuXHJcbmRlY2xhcmUgbGV0IElOOiBhbnk7XHJcblxyXG5leHBvcnQgY2xhc3MgTGlua2VkaW5Mb2dpblByb3ZpZGVyIGV4dGVuZHMgQmFzZUxvZ2luUHJvdmlkZXIge1xyXG5cclxuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFBST1ZJREVSX0lEID0gJ2xpbmtlZGluJztcclxuICBwdWJsaWMgbG9naW5Qcm92aWRlck9iajogTG9naW5Qcm92aWRlckNsYXNzTW9kZWwgPSBuZXcgTG9naW5Qcm92aWRlckNsYXNzTW9kZWwoKTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjbGllbnRJZDogc3RyaW5nKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gICAgdGhpcy5sb2dpblByb3ZpZGVyT2JqLmlkID0gY2xpZW50SWQ7XHJcbiAgICB0aGlzLmxvZ2luUHJvdmlkZXJPYmoubmFtZSA9ICdsaW5rZWRpbic7XHJcbiAgICB0aGlzLmxvZ2luUHJvdmlkZXJPYmoudXJsID0gJ2h0dHBzOi8vcGxhdGZvcm0ubGlua2VkaW4uY29tL2luLmpzJztcclxuICB9XHJcblxyXG4gIGluaXRpYWxpemUoKTogUHJvbWlzZTxTb2NpYWxVc2VyTW9kZWw+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgIHRoaXMubG9hZFNjcmlwdCh0aGlzLmxvZ2luUHJvdmlkZXJPYmosICgpID0+IHtcclxuICAgICAgICAgIElOLmluaXQoe1xyXG4gICAgICAgICAgICBhcGlfa2V5OiB0aGlzLmNsaWVudElkLFxyXG4gICAgICAgICAgICBhdXRob3JpemU6IHRydWUsXHJcbiAgICAgICAgICAgIG9uTG9hZDogdGhpcy5vbkxpbmtlZEluTG9hZCgpXHJcbiAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICBJTi5FdmVudC5vbihJTiwgJ2F1dGgnLCAoKSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChJTi5Vc2VyLmlzQXV0aG9yaXplZCgpKSB7XHJcbiAgICAgICAgICAgICAgSU4uQVBJLlJhdyhcclxuICAgICAgICAgICAgICAgICcvcGVvcGxlL346KGlkLGZpcnN0LW5hbWUsbGFzdC1uYW1lLGVtYWlsLWFkZHJlc3MscGljdHVyZS11cmwpJ1xyXG4gICAgICAgICAgICAgICkucmVzdWx0KCAocmVzOiBMaW5rZWRJblJlc3BvbnNlTW9kZWwpID0+IHtcclxuICAgICAgICAgICAgICAgIHJlc29sdmUodGhpcy5kcmF3VXNlcihyZXMpKTtcclxuICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBvbkxpbmtlZEluTG9hZCgpIHtcclxuICAgIElOLkV2ZW50Lm9uKElOLCAnc3lzdGVtUmVhZHknLCAoKSA9PiB7XHJcbiAgICAgIElOLlVzZXIucmVmcmVzaCgpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBkcmF3VXNlcihyZXNwb25zZTogTGlua2VkSW5SZXNwb25zZU1vZGVsKTogU29jaWFsVXNlck1vZGVsIHtcclxuICAgIGxldCB1c2VyOiBTb2NpYWxVc2VyTW9kZWwgPSBuZXcgU29jaWFsVXNlck1vZGVsKCk7XHJcbiAgICB1c2VyLmlkID0gcmVzcG9uc2UuZW1haWxBZGRyZXNzO1xyXG4gICAgdXNlci5uYW1lID0gcmVzcG9uc2UuZmlyc3ROYW1lICsgJyAnICsgcmVzcG9uc2UubGFzdE5hbWU7XHJcbiAgICB1c2VyLmVtYWlsID0gcmVzcG9uc2UuZW1haWxBZGRyZXNzO1xyXG4gICAgdXNlci5pbWFnZSA9IHJlc3BvbnNlLnBpY3R1cmVVcmw7XHJcbiAgICB1c2VyLnRva2VuID0gSU4uRU5WLmF1dGgub2F1dGhfdG9rZW47XHJcbiAgICByZXR1cm4gdXNlcjtcclxuICB9XHJcblxyXG4gIHNpZ25JbigpOiBQcm9taXNlPFNvY2lhbFVzZXJNb2RlbD4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgSU4uVXNlci5hdXRob3JpemUoICgpID0+IHtcclxuICAgICAgICBJTi5BUEkuUmF3KCcvcGVvcGxlL346KGlkLGZpcnN0LW5hbWUsbGFzdC1uYW1lLGVtYWlsLWFkZHJlc3MscGljdHVyZS11cmwpJykucmVzdWx0KCAocmVzOiBMaW5rZWRJblJlc3BvbnNlTW9kZWwpID0+IHtcclxuICAgICAgICAgIHJlc29sdmUodGhpcy5kcmF3VXNlcihyZXMpKTtcclxuICAgICAgICB9KTtcclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHNpZ25PdXQoKTogUHJvbWlzZTxhbnk+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgIElOLlVzZXIubG9nb3V0KChyZXNwb25zZTogYW55KSA9PiB7XHJcbiAgICAgICAgcmVzb2x2ZSgpO1xyXG4gICAgICB9LCAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgICByZWplY3QoZXJyKTtcclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==