UNPKG

ngx-social-button

Version:

Social login/share buttons for Angular 6, 7, 8

150 lines (149 loc) 13.1 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,uselessCode} checked by tsc */ import * as tslib_1 from "tslib"; import { SocialUser, LoginProviderClass } from '../entities/user'; import { BaseLoginProviderImpl } from '../entities/baseLoginProviderImpl'; 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 LoginProviderClass(); _this.TYPE = 'linkedin'; _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 SocialUser(); user.id = response.id; user.name = response.firstName + ' ' + response.lastName; user.email = response.emailAddress; user.image = response.pictureUrl; user.accessToken = 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) { console.log('linkedin', 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); }); }); }; /** * @param {?=} share * @return {?} */ LinkedinLoginProvider.prototype.sharing = /** * @param {?=} share * @return {?} */ function (share) { return new Promise(function (resolve, reject) { /** @type {?} */ var payload = { 'comment': share ? share.comment : '', 'visibility': { 'code': 'anyone' } }; IN.API.Raw('/people/~/shares?format=json') .method('POST') .body(JSON.stringify(payload)) .result(function (data) { console.log('linkedin share', data); resolve(); }) .error(function (onError) { console.log('linkedin', onError); }); }); }; LinkedinLoginProvider.PROVIDER_TYPE = 'linkedin'; return LinkedinLoginProvider; }(BaseLoginProviderImpl)); export { LinkedinLoginProvider }; if (false) { /** @type {?} */ LinkedinLoginProvider.PROVIDER_TYPE; /** @type {?} */ LinkedinLoginProvider.prototype.loginProviderObj; /** @type {?} */ LinkedinLoginProvider.prototype.TYPE; /** @type {?} */ LinkedinLoginProvider.prototype.clientId; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlua2VkaW5Qcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1zb2NpYWwtYnV0dG9uLyIsInNvdXJjZXMiOlsibGliL3Byb3ZpZGVycy9saW5rZWRpblByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFDLFVBQVUsRUFBRSxrQkFBa0IsRUFBbUIsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRixPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQzs7SUFJN0IsaURBQXFCO0lBTTVELCtCQUFvQixRQUFnQjtRQUFwQyxZQUNJLGlCQUFPLFNBSVY7UUFMbUIsY0FBUSxHQUFSLFFBQVEsQ0FBUTtpQ0FIVSxJQUFJLGtCQUFrQixFQUFFO3FCQUMvRCxVQUFVO1FBSWIsS0FBSSxDQUFDLGdCQUFnQixDQUFDLEVBQUUsR0FBRyxRQUFRLENBQUM7UUFDcEMsS0FBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksR0FBRyxVQUFVLENBQUM7UUFDeEMsS0FBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsR0FBRyxxQ0FBcUMsQ0FBQzs7S0FDckU7Ozs7SUFFRCwwQ0FBVTs7O0lBQVY7UUFBQSxpQkFxQkM7UUFwQkcsTUFBTSxDQUFDLElBQUksT0FBTyxDQUFDLFVBQUMsT0FBTyxFQUFFLE1BQU07WUFDL0IsS0FBSSxDQUFDLFVBQVUsQ0FBQyxLQUFJLENBQUMsZ0JBQWdCLEVBQUU7Z0JBQ25DLEVBQUUsQ0FBQyxJQUFJLENBQUM7b0JBQ0osT0FBTyxFQUFFLEtBQUksQ0FBQyxRQUFRO29CQUN0QixTQUFTLEVBQUUsSUFBSTtvQkFDZixNQUFNLEVBQUUsS0FBSSxDQUFDLGNBQWMsRUFBRTtpQkFDaEMsQ0FBQyxDQUFDO2dCQUVILEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxNQUFNLEVBQUU7b0JBQ3BCLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQyxDQUFDO3dCQUN6QixFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FDTiwrREFBK0QsQ0FDbEUsQ0FBQyxNQUFNLENBQUMsVUFBQyxHQUFxQjs0QkFDM0IsT0FBTyxDQUFDLEtBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQzt5QkFDL0IsQ0FBQyxDQUFDO3FCQUNOO2lCQUNKLENBQUMsQ0FBQzthQUVOLENBQUMsQ0FBQztTQUNOLENBQUMsQ0FBQztLQUNOOzs7O0lBRUQsOENBQWM7OztJQUFkO1FBQ0ksRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLGFBQWEsRUFBRTtZQUMzQixFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1NBQ3JCLENBQUMsQ0FBQztLQUNOOzs7OztJQUVELHdDQUFROzs7O0lBQVIsVUFBUyxRQUEwQjs7UUFFL0IsSUFBTSxJQUFJLEdBQWUsSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUMxQyxJQUFJLENBQUMsRUFBRSxHQUFHLFFBQVEsQ0FBQyxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLElBQUksR0FBRyxRQUFRLENBQUMsU0FBUyxHQUFHLEdBQUcsR0FBRyxRQUFRLENBQUMsUUFBUSxDQUFDO1FBQ3pELElBQUksQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDLFlBQVksQ0FBQztRQUNuQyxJQUFJLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxVQUFVLENBQUM7UUFDakMsSUFBSSxDQUFDLFdBQVcsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUM7UUFDM0MsTUFBTSxDQUFDLElBQUksQ0FBQztLQUNmOzs7O0lBRUQsc0NBQU07OztJQUFOO1FBQUEsaUJBU0M7UUFSRyxNQUFNLENBQUMsSUFBSSxPQUFPLENBQUMsVUFBQyxPQUFPLEVBQUUsTUFBTTtZQUMvQixFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztnQkFDZCxFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQywrREFBK0QsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxVQUFDLEdBQUc7b0JBQ25GLE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFDO29CQUM3QixPQUFPLENBQUMsS0FBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2lCQUMvQixDQUFDLENBQUM7YUFDTixDQUFDLENBQUM7U0FDTixDQUFDLENBQUM7S0FDTjs7OztJQUVELHVDQUFPOzs7SUFBUDtRQUNJLE1BQU0sQ0FBQyxJQUFJLE9BQU8sQ0FBQyxVQUFDLE9BQU8sRUFBRSxNQUFNO1lBQy9CLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQUMsUUFBYTtnQkFDekIsT0FBTyxFQUFFLENBQUM7YUFDYixFQUFFLFVBQUMsR0FBUTtnQkFDUixNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7YUFDZixDQUFDLENBQUM7U0FDTixDQUFDLENBQUM7S0FDTjs7Ozs7SUFHRCx1Q0FBTzs7OztJQUFQLFVBQVEsS0FBVztRQUNmLE1BQU0sQ0FBQyxJQUFJLE9BQU8sQ0FBQyxVQUFDLE9BQU8sRUFBRSxNQUFNOztZQUMvQixJQUFNLE9BQU8sR0FBRztnQkFDWixTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFO2dCQUNyQyxZQUFZLEVBQUU7b0JBQ1YsTUFBTSxFQUFFLFFBQVE7aUJBQ25CO2FBQ0osQ0FBQztZQUNGLEVBQUUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLDhCQUE4QixDQUFDO2lCQUNyQyxNQUFNLENBQUMsTUFBTSxDQUFDO2lCQUNkLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2lCQUM3QixNQUFNLENBQUMsVUFBQSxJQUFJO2dCQUNSLE9BQU8sQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLENBQUM7Z0JBQ3BDLE9BQU8sRUFBRSxDQUFDO2FBQ2IsQ0FBQztpQkFDRCxLQUFLLENBQUMsVUFBQSxPQUFPO2dCQUNWLE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDO2FBQ3BDLENBQUMsQ0FBQztTQUNWLENBQUMsQ0FBQztLQUNOOzBDQTVGc0MsVUFBVTtnQ0FQckQ7RUFLMkMscUJBQXFCO1NBQW5ELHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7U29jaWFsVXNlciwgTG9naW5Qcm92aWRlckNsYXNzLCBMaW5rZWRJblJlc3BvbnNlfSBmcm9tICcuLi9lbnRpdGllcy91c2VyJztcbmltcG9ydCB7QmFzZUxvZ2luUHJvdmlkZXJJbXBsfSBmcm9tICcuLi9lbnRpdGllcy9iYXNlTG9naW5Qcm92aWRlckltcGwnO1xuXG5kZWNsYXJlIGxldCBJTjogYW55O1xuXG5leHBvcnQgY2xhc3MgTGlua2VkaW5Mb2dpblByb3ZpZGVyIGV4dGVuZHMgQmFzZUxvZ2luUHJvdmlkZXJJbXBsIHtcblxuICAgIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgUFJPVklERVJfVFlQRSA9ICdsaW5rZWRpbic7XG4gICAgcHVibGljIGxvZ2luUHJvdmlkZXJPYmo6IExvZ2luUHJvdmlkZXJDbGFzcyA9IG5ldyBMb2dpblByb3ZpZGVyQ2xhc3MoKTtcbiAgICBUWVBFID0gJ2xpbmtlZGluJztcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgY2xpZW50SWQ6IHN0cmluZykge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLmxvZ2luUHJvdmlkZXJPYmouaWQgPSBjbGllbnRJZDtcbiAgICAgICAgdGhpcy5sb2dpblByb3ZpZGVyT2JqLm5hbWUgPSAnbGlua2VkaW4nO1xuICAgICAgICB0aGlzLmxvZ2luUHJvdmlkZXJPYmoudXJsID0gJ2h0dHBzOi8vcGxhdGZvcm0ubGlua2VkaW4uY29tL2luLmpzJztcbiAgICB9XG5cbiAgICBpbml0aWFsaXplKCk6IFByb21pc2U8U29jaWFsVXNlcj4ge1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5sb2FkU2NyaXB0KHRoaXMubG9naW5Qcm92aWRlck9iaiwgKCkgPT4ge1xuICAgICAgICAgICAgICAgIElOLmluaXQoe1xuICAgICAgICAgICAgICAgICAgICBhcGlfa2V5OiB0aGlzLmNsaWVudElkLFxuICAgICAgICAgICAgICAgICAgICBhdXRob3JpemU6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgIG9uTG9hZDogdGhpcy5vbkxpbmtlZEluTG9hZCgpXG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICBJTi5FdmVudC5vbihJTiwgJ2F1dGgnLCAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChJTi5Vc2VyLmlzQXV0aG9yaXplZCgpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBJTi5BUEkuUmF3KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICcvcGVvcGxlL346KGlkLGZpcnN0LW5hbWUsbGFzdC1uYW1lLGVtYWlsLWFkZHJlc3MscGljdHVyZS11cmwpJ1xuICAgICAgICAgICAgICAgICAgICAgICAgKS5yZXN1bHQoKHJlczogTGlua2VkSW5SZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc29sdmUodGhpcy5kcmF3VXNlcihyZXMpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvbkxpbmtlZEluTG9hZCgpIHtcbiAgICAgICAgSU4uRXZlbnQub24oSU4sICdzeXN0ZW1SZWFkeScsICgpID0+IHtcbiAgICAgICAgICAgIElOLlVzZXIucmVmcmVzaCgpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBkcmF3VXNlcihyZXNwb25zZTogTGlua2VkSW5SZXNwb25zZSk6IFNvY2lhbFVzZXIge1xuXG4gICAgICAgIGNvbnN0IHVzZXI6IFNvY2lhbFVzZXIgPSBuZXcgU29jaWFsVXNlcigpO1xuICAgICAgICB1c2VyLmlkID0gcmVzcG9uc2UuaWQ7XG4gICAgICAgIHVzZXIubmFtZSA9IHJlc3BvbnNlLmZpcnN0TmFtZSArICcgJyArIHJlc3BvbnNlLmxhc3ROYW1lO1xuICAgICAgICB1c2VyLmVtYWlsID0gcmVzcG9uc2UuZW1haWxBZGRyZXNzO1xuICAgICAgICB1c2VyLmltYWdlID0gcmVzcG9uc2UucGljdHVyZVVybDtcbiAgICAgICAgdXNlci5hY2Nlc3NUb2tlbiA9IElOLkVOVi5hdXRoLm9hdXRoX3Rva2VuO1xuICAgICAgICByZXR1cm4gdXNlcjtcbiAgICB9XG5cbiAgICBzaWduSW4oKTogUHJvbWlzZTxTb2NpYWxVc2VyPiB7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICBJTi5Vc2VyLmF1dGhvcml6ZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgSU4uQVBJLlJhdygnL3Blb3BsZS9+OihpZCxmaXJzdC1uYW1lLGxhc3QtbmFtZSxlbWFpbC1hZGRyZXNzLHBpY3R1cmUtdXJsKScpLnJlc3VsdCgocmVzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCdsaW5rZWRpbicsIHJlcyk7XG4gICAgICAgICAgICAgICAgICAgIHJlc29sdmUodGhpcy5kcmF3VXNlcihyZXMpKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBzaWduT3V0KCk6IFByb21pc2U8YW55PiB7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICBJTi5Vc2VyLmxvZ291dCgocmVzcG9uc2U6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgIHJlc29sdmUoKTtcbiAgICAgICAgICAgIH0sIChlcnI6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgIHJlamVjdChlcnIpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuXG4gICAgc2hhcmluZyhzaGFyZT86IGFueSk6IFByb21pc2U8YW55PiB7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBwYXlsb2FkID0ge1xuICAgICAgICAgICAgICAgICdjb21tZW50Jzogc2hhcmUgPyBzaGFyZS5jb21tZW50IDogJycsXG4gICAgICAgICAgICAgICAgJ3Zpc2liaWxpdHknOiB7XG4gICAgICAgICAgICAgICAgICAgICdjb2RlJzogJ2FueW9uZSdcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgSU4uQVBJLlJhdygnL3Blb3BsZS9+L3NoYXJlcz9mb3JtYXQ9anNvbicpXG4gICAgICAgICAgICAgICAgLm1ldGhvZCgnUE9TVCcpXG4gICAgICAgICAgICAgICAgLmJvZHkoSlNPTi5zdHJpbmdpZnkocGF5bG9hZCkpXG4gICAgICAgICAgICAgICAgLnJlc3VsdChkYXRhID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coJ2xpbmtlZGluIHNoYXJlJywgZGF0YSk7XG4gICAgICAgICAgICAgICAgICAgIHJlc29sdmUoKTtcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIC5lcnJvcihvbkVycm9yID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coJ2xpbmtlZGluJywgb25FcnJvcik7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxufVxuIl19